トップページ⇒tech
1001コメント301KB

vista対策

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/11/06(月) 20:41:33
まとめたい
0083782006/11/27(月) 22:07:58
>>82
つまり回避方法はないということ?

管理者モードで動作するネットワークアプリは使えなくなる可能性があるのか・・・

0084デフォルトの名無しさん2006/11/27(月) 22:40:04
ローカルセキュリティポリシーが効くんじゃなかったかなあ
0085デフォルトの名無しさん2006/11/28(火) 03:06:42
>>83
そもそもXPで別ユーザー実行したときはどうしてたの? そんなのサポート外?
XPだとこんなの出たけど。
---------------------------
Z:\pwd.exe
---------------------------
Z:\pwd.exe

指定されたパスは存在しません。



パスが正しいか確認してください。
---------------------------
OK
---------------------------
0086782006/11/28(火) 11:12:34
>>84
kwsk

>>85
XPではサポート外というか起動出来ないようにして、管理者権限のユーザのみ使用可能にしてました。

レジストリ(LOCAL_MACHINE等)をいじったりするので、管理者権限無いと
動作する意味がないので。

0087デフォルトの名無しさん2006/12/03(日) 19:45:21
おれが採った方法:インストール時にインストールしたディレクトリをEveryone/Full-controlにしてしまう。

Windows95時代からマイナーチェンジのみ繰り返しているソフトで、プログラムをインストールしたディレクトリ
自身に設定ファイル(要Write)を置いているため、苦肉の策。
インストーラはInstallShield3(古っ!)を使っているが、そのスクリプト中からLaunchAppAndWait()で、インスト
ールディレクトリのセキュリティーを設定(SetNamedSecurityInfo())するプログラムを呼び出す。
これで、exeと同じディレクトリ(Program files下)にある設定ファイルへの書き込みも、アップデートプログラム
での書き込みもOK!

良い子は真似しないように。

P.S.
UACよりもWinHlp32( .hlp)が使えないのに泣いた・・・・・
0088デフォルトの名無しさん2006/12/21(木) 21:49:14
>>76
インストーラみたいなファイル名なのにインストールしないで終了すると
プログラム互換性アシスタントに文句言われるよ
0089デフォルトの名無しさん2006/12/22(金) 01:00:12
フルコントロールにしなくても、読み書き変更やファイル作成なんかの権限を与えれば十分だと思うが。
0090デフォルトの名無しさん2006/12/23(土) 00:53:49
>>53
> CreateProcessAsUserでユーザー偽装しようとしたら動きさえしなかった
CreateProcessWithTokenWで降格に成功した。
トークンはエクスプローラのウィンドウからGetWindowThreadProcessId→
OpenProcess→OpenProcessToken→DuplicateTokenExで引っ張ってきた。
すでにログオン済みのユーザなので
プロファイルのロードや環境ブロックの作成は不要
0091デフォルトの名無しさん2006/12/25(月) 21:09:06
>>88
>インストールしないで終了する
ってどう判断してるの?
0092デフォルトの名無しさん2006/12/27(水) 01:13:44
>>91
[プログラムの追加と削除]にでてくるアプリのリスト( Unistaller レジストリキー配下のエントリ )が
更新されたかどうかなんじゃないの?
0093デフォルトの名無しさん2007/01/19(金) 19:22:26
MFCとかで作ったアプリのアイコン表示が、Vistaと整合性悪そうです。
皆さんどうしてますか?
0094デフォルトの名無しさん2007/01/19(金) 22:37:24
Vistaが普及するには2年かかるから、2kとXPだけに対応する
0095デフォルトの名無しさん2007/01/20(土) 11:45:16
>>93
整合性が悪いって具体的には?
0096デフォルトの名無しさん2007/01/20(土) 17:28:29
>94
ところがPCと一緒に納入するような高額なソフトだと、
メーカーPCがVista搭載になると同時に対応を迫られる。

まあ「まだ検証できてないんでXP買ってください」っていうんだけどなw
0097デフォルトの名無しさん2007/01/21(日) 17:09:14
サイズ変更可能でタイトルバーなしだと Aero で変な縁がでちゃうんだけど、
どうすればいいんだろうか。
付箋紙系のソフトとか影響大きそう。
0098デフォルトの名無しさん2007/01/22(月) 01:02:24
>>94
>Vistaが普及するには2年かかるから
そんなにかかるかねえ?
うちのお客なんか、既にVISTAx64の心配してる・・・・・(WHQL未取得のデバドラがあるんで)
0099デフォルトの名無しさん2007/01/25(木) 01:38:06
うちの開発メンバーも、予想外の不具合の多さに閉口・・・。
IEコンポーネント使ってる部分でCSSが利いてねぇとか、
Aeroのときだけドロップダウンがへんなところで開くとか。

「MSがSP1だすまで、正式対応しません運動」をやろうよ。
半透明WindowなんかFlashですらとっくにできるのに、なんでわざわざOS変えなきゃならんのだ。
0100デフォルトの名無しさん2007/01/25(木) 03:29:11
無駄なあがきをしても無意味。
0101デフォルトの名無しさん2007/01/25(木) 08:54:58
アド民権限有るのにスタートメニュー内のRemoveDirectoryに失敗してしまうorz
ショートカットは削除できているのに…
0102デフォルトの名無しさん2007/01/26(金) 19:20:34
本製品をインストールして使用するためには、UACを無効にすることをお勧めします。
(UACが有効な環境はサポート対象外です)
0103デフォルトの名無しさん2007/01/26(金) 19:30:18
どこの手抜きアプリだそりゃ。
0104デフォルトの名無しさん2007/01/26(金) 20:40:13
おそらくどこもかしこも。
0105デフォルトの名無しさん2007/01/27(土) 02:57:37
そんなのは、ひっぱたけ。
0106デフォルトの名無しさん2007/01/27(土) 09:10:41
ほとんどのソフトでマニフェストに<requestedExecutionLevel level="requireAdministrator"/>
を埋め込むってことにはなりそうだな。
0107デフォルトの名無しさん2007/01/27(土) 10:45:15
ならねーよ
0108デフォルトの名無しさん2007/01/27(土) 19:02:29
UACに対応しないソフトは糞。いい加減にしろ。
0109デフォルトの名無しさん2007/01/27(土) 19:05:16
むきになるなよ。みっともない
0110デフォルトの名無しさん2007/01/28(日) 06:53:20
UACに対応するソフトが糞w
どうせSP1でUAC機能はなくなる
0111デフォルトの名無しさん2007/01/28(日) 12:11:21
無くなるって、ソースはどこよ?
SP1でカーネルが Server側と同じになるからか?
0112デフォルトの名無しさん2007/01/28(日) 13:02:59
UACを無効にするAPIキボンヌ
0113デフォルトの名無しさん2007/01/28(日) 13:13:04
そのAPIを呼ぶのにUACが
0114デフォルトの名無しさん2007/01/28(日) 19:24:31
>>111
ServerならVisual Styleみたいにデフォルト無効にはなるかもしれないけど機能
そのものがなくなるとは考えにくいしクライアントOSであるVista SP1のデフォルト
設定はまた違うだろう。
Server 2003 SP1とXP x64がカーネルは共通だけど設定が異なるみたいに
0115デフォルトの名無しさん2007/01/28(日) 21:46:05
Vista も SP1で Server側とカーネルが同じになるんだったっけか。どっかのBLOGで見た気がする。
でも、UACがSP1で無くなるって話はどこから出たんだ。
0116デフォルトの名無しさん2007/01/28(日) 22:27:10
ネタにマジレスかこわるい
0117デフォルトの名無しさん2007/01/28(日) 23:25:26
UACは総すかん食うだろうなあ。
プログラマはやるよ。仕事だからな。
でもユーザはそうは思うまい。
こんなだとは知らずにVISTAパソコン買っちゃったけど
フリーソフトいろいろ動かないしXPにしたいなんて言い出すだろうな。
0118デフォルトの名無しさん2007/01/28(日) 23:47:39
一般人はフリーソフトをあれこれ入れたりしない
0119デフォルトの名無しさん2007/01/29(月) 06:43:30
そうでもない。
0120デフォルトの名無しさん2007/01/29(月) 16:31:56
そういう一般人を黙らせてこそ、Vista対策も完成するのだ。
VISTAの64bit版を入れるか迷うな。
0121デフォルトの名無しさん2007/01/29(月) 20:08:16
XPからアップグレードインストールしたVISTAではUACが一部無効なんだね。
Program Filesもレジストリも普通にいじれてしまう。
こういう環境じゃテストにならないってことかな。面倒だな。
0122デフォルトの名無しさん2007/01/29(月) 22:33:27
>>121
実は仮想化されたフォルダやレジストリをいじってましたってオチじゃないよな
0123デフォルトの名無しさん2007/01/30(火) 02:16:36
あげ
0124デフォルトの名無しさん2007/01/30(火) 05:04:55
開発の仕事から離脱して良かった♪
もう戻れないw
0125デフォルトの名無しさん2007/01/30(火) 08:52:44
>>121
>こういう環境じゃテストにならないってことかな。面倒だな。

そういう環境「も」テスト汁、ってことじゃないか?
アプリケーション30分互換性チェックとやらでクリーンインストールとXP SP2からのアップグレードの2パターンが書いてあったけどそういう意味か。
何が30分だ。OSインストールするだけで一日かかるっつのw
0126デフォルトの名無しさん2007/01/30(火) 09:04:36
>Windows VistaTM、および Internet Explorer 7.0 についてのご注意
>ttp://www.so-net.ne.jp/support/information/vista.html
0127デフォルトの名無しさん2007/01/30(火) 14:30:23
IE6でホームページ作ってた人は大打撃だなww
CSSの解釈が仕様通りになったから、ページ崩れて見れなくなるだろうな
0128デフォルトの名無しさん2007/01/30(火) 20:42:59
何をいってるのかよくわからんが、IE7はもう使えている。
0129デフォルトの名無しさん2007/01/30(火) 21:03:50
>>128
馬鹿は黙ってろ
0130デフォルトの名無しさん2007/01/30(火) 21:31:08
なにをいまさらと
0131デフォルトの名無しさん2007/02/02(金) 12:09:43
関連付けがよくわ
0132デフォルトの名無しさん2007/02/02(金) 13:03:37
その後>>131の姿を見たものはいなかった……
0133デフォルトの名無しさん2007/02/05(月) 13:26:41
ベータやRCはいじってたが、いざ発売されると逆に冷めてしまった
製品版買っとくべきだよな…やっぱり
0134デフォルトの名無しさん2007/02/05(月) 14:10:48
店頭のデモでVista+RAM1Gで動いていたのをいじくってきた。
タスクマネージャを見ると利用可能メモリが2KBwwwwww

こりゃ絶対メモリは2Gは必要ですぜ旦那。
0135デフォルトの名無しさん2007/02/05(月) 15:07:16
>>134
あんたプログラマ?
いや違うか。頭悪すぎだもんな。
0136デフォルトの名無しさん2007/02/05(月) 15:29:34
しかしタスクマネージャの表示内容もそろそろ変えるべきじゃないかな
0137デフォルトの名無しさん2007/02/05(月) 18:36:19
タスクマネージャより管理ツール使わないか?
0138デフォルトの名無しさん2007/02/05(月) 20:01:29
>>135
プログラマ志望の厨房か何かだろ。
0139デフォルトの名無しさん2007/02/06(火) 05:42:54
>>136
XPと比べて随分変わってる気がするが
0140デフォルトの名無しさん2007/02/06(火) 06:10:33
メモリのデフォルト表示がワーキングセットからプライベートメモリになってたりな。
Aeroのように見た目が変わらなきゃ違いを認識できないやつは
この板じゃお呼びじゃないと思うが
0141デフォルトの名無しさん2007/02/07(水) 10:17:48
Windows Vistaの「Windowsフォトギャラリー」は酷すぎる
ttp://www.heartlogic.jp/archives/2007/02/windows_photogallery.html
一応、そこいらの本やヘルプを見た限りでは、この「何も聞かずに上書き保存」仕様をやめさせる設定項目はないようだ。
「オリジナルは別に保存しておこうね」とか、わけのわからないことを言ってる本もあるくらい。
0142デフォルトの名無しさん2007/02/07(水) 10:38:59
>>141
自動的にバックアップがとられたはず。
0143デフォルトの名無しさん2007/02/07(水) 10:50:59
Vista ってProgram Filesの下にはファイル書けないそうですが、
じゃあ、iniファイルなんかはどこに置けば良いのでしょうか?
0144デフォルトの名無しさん2007/02/07(水) 10:54:50
>143
mydocかなぁ
0145デフォルトの名無しさん2007/02/07(水) 10:57:30
>mydoc

ユーザー毎に設定するものじゃない場合は、
All Users\mydocがありますか?

Vi$taの互換性を甘く見てたため、未入手。
0146デフォルトの名無しさん2007/02/07(水) 11:55:40
>>145
お前・・・あほやろ?
0147デフォルトの名無しさん2007/02/07(水) 13:41:51
メニューバーやツールバーって廃止の方向なの?
0148デフォルトの名無しさん2007/02/07(水) 15:14:57
>142
それ、Ultimateとかだけしかついてない。
0149デフォルトの名無しさん2007/02/07(水) 15:24:11
Vi$ta悲惨だな...
0150デフォルトの名無しさん2007/02/07(水) 15:28:11
悲惨なのはプログラマですがなにか?
0151デフォルトの名無しさん2007/02/07(水) 15:32:14
>>143
>>87
0152デフォルトの名無しさん2007/02/07(水) 15:53:44
Vi$taオワタ\(^o^)/
0153デフォルトの名無しさん2007/02/07(水) 16:25:04
Vista対応のアプリケーションを開発中です。

CドライブにOSが入っているとして
XP,2000のパス
C:\Documents and Settings\All Users\Application Data\
に保存していたデータがVistaでは
C:\ProgramData\
に変更になっていました

インストールシールドからアプリケーションを起動してそのフォルダに
初期の設定データを保存してました。
しかしその後、アプリケーションを手動で起動し、その設定データを
編集しようとすると書き換え保存ができなくなっていました。

同じアプリでも「インストールシールドで自動的に起動したアプリ」と
「手動で起動したアプリ」は権限が違うため、
(setup.exeを起動すると権限が自動的に上がる)
前者が保存したファイルは後者では編集ができなくなっているの
でした。

解決方法はないでしょうか?

インストールシールドから権限を下げてアプリ起動させる方法とか、
保存するときに権限を下げて保存できる方法とか、、。

C:\ProgramData\ にできれば保存したいです。

よろしくお願いします。
0154デフォルトの名無しさん2007/02/07(水) 16:25:10
>>148
いや、ヘルプに書いてあるけど?
0155デフォルトの名無しさん2007/02/07(水) 16:33:36
つまり、保存確認ダイアログ無し&自動バックアップがデフォ?
0156デフォルトの名無しさん2007/02/07(水) 17:41:26
>153
マニフェストファイルを変更。
0157デフォルトの名無しさん2007/02/07(水) 18:13:38
>156
コメントありがとうございます。
マニフェストファイルに

<description>Windows Shell</description>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker"uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
<dependency>

上記を追加しても、インストールシールドからアプリケーションを起動すると
だめなんです。
上位の権限でアプリケーションが起動してしまいます。

手動でexeをクリック起動だと通常の権限に戻ってしまうんです。
0158デフォルトの名無しさん2007/02/07(水) 19:25:17
>>141
なにそのクソ仕様
0159デフォルトの名無しさん2007/02/07(水) 19:43:42
>>153
せっかく、setupから起動したアプリが(真の)アドミ権限を持ってるんだから、その時に
C:\ProgramData\<your-appli>
のセキュリティー設定を変えちまえば?
0160デフォルトの名無しさん2007/02/07(水) 20:41:19
いや、正攻法なら、setup.exeから起動されたプログラムが作るファイルの権限変更じゃね?

たぶん、ttp://msdn2.microsoft.com/en-us/library/aa480150.aspx
だと思うんだけど…。間違ってたらごめん。
0161デフォルトの名無しさん2007/02/07(水) 21:08:09
>141に追記が来てるね
しかしこうやって戸惑う人が現れる以上、この仕様はいかがなものか?と思わざるを得ない
0162デフォルトの名無しさん2007/02/07(水) 23:33:19
>>153>>157
MSDNマガジン(オンラインで読める)に書いてあったケースだな。

インストーラAからアプリBを起動すると、アプリBまで権限が上がってしまってよろしくない。
インストーラAとアプリBを順番に起動するアプリCを作るべし。
Aを起動するときはCreateProcessではなく、Shell何とか関数にしないと
権限昇格ダイアログが出ないので注意。

そんな感じ。URLは自分で調べてくれ。
0163デフォルトの名無しさん2007/02/08(木) 00:03:37
レジストリの権限ってどうなってんの?
HKEY_CURRENT_USER\Software
HKEY_LOCAL_MACHINE\Software
このへんが自由に書けるなら問題無いけど。
後は HKEY_CLASSES_ROOT 以下とか。
0164デフォルトの名無しさん2007/02/08(木) 00:07:07
>>163
自由に書けるのは HKEY_CURRENT_USER だけだと思う
0165デフォルトの名無しさん2007/02/08(木) 00:24:38
システム管理下のフォルダ(例えばProgram Filesなど)にインストールして、
セーブデータをそのフォルダ内に作りたい。
でもプログラム起動のたびに管理者権限昇格もしたくない。

そんな方法はなさそうですね…
0166デフォルトの名無しさん2007/02/08(木) 00:26:49
>>162
そうそう。CreateProcessで通常のexeから管理者権限のexeを起動するとだめなのな。
互換性の問題を検出したとか出て2回目以降は動くようになるけどカコワルイ。
いやらしいのは一回動くようになっちゃうとその後はその環境では問題なく動いてしまうから、
初回起動時のメッセージを見落としたら、そういう問題があることに開発者すら気づかないという点だな。
初回なんてどうせろくに動かないから、ちょっとしたメッセージなんか気にしないで忘れてしまうかもしれない。
落とし穴だな。

試行錯誤でShellExecuteならいけるというのを見つけてそれで実装したけど
もしかしたらこれってバグ技かなあ? と思ってた。
MSDNマガジン推奨だったのか。ちょっと安心した。
0167デフォルトの名無しさん2007/02/08(木) 07:43:58
こういうのって、メンドクサクしただけで、ユーザの保護に役立っているように思えないんだよな

もっと単純シンプルな仕掛
たとえば、実行ファイルのあるフォルダツリー以下しかアクセス出来ないとかさ
レジストリがその実行ファイル専用に出来るとかさ
0168デフォルトの名無しさん2007/02/08(木) 09:34:20
暗にAdminで常用するな糞が、って言いたいんじゃね?
0169デフォルトの名無しさん2007/02/08(木) 09:35:09
あんなに警告出しまくってもだめだよな。

おおかみがきたぞー
って話アメリカにはないのかな?
0170デフォルトの名無しさん2007/02/08(木) 11:21:20
153 157です。
160さんコメントありがとうございます。
http://msdn.microsoft.com/msdnmag/issues/07/01/UAC/default.aspx?loc=jp
ここに%ALLUSERSPROFILE%について日本語で掲載されていますが、インストール後に
手動でアプリ起動して設定ファイル保存せよというような意味が書いてあります。
しかし、160さんの「管理者権限を下げて保存する」方法が私のやりたいことに一番近い感じですが、どうやるんでしょう?
調べています。

>162 さん
ありがとうございます。まったくそのとおりなんです。
162さんの方法は「インストールランチャ」のようなアプリをまた別に作れということなんですよね?
うーん、、、、、、。考えてみます。

0171デフォルトの名無しさん2007/02/08(木) 13:09:24
つまりは「個人データを全ユーザ共有バイナリの直下ディレクトリに置くな」って事だろ。
その場凌ぎのvista対応をするよりも、仕様/設計から見直した方がインジャネーノ?
今後もあるわけだし。
0172デフォルトの名無しさん2007/02/08(木) 13:12:57
>その場凌ぎのvista対応をするよりも、仕様/設計から見直した方がインジャネーノ?

だから、どこの置けと?
全ユーザーに関する設定を。
0173デフォルトの名無しさん2007/02/08(木) 13:56:53
Linuxを買収してWindowsって名前にしたらまだすっきりしたのにな
真綿で首しめるような事するから・・・
0174デフォルトの名無しさん2007/02/08(木) 14:03:49
マルチユーザにしてユーザ同士の保護ばっかり厳しくしたって意味ないだろうに
パソコンなんて安価になって1人1台の時代なんだしさ
0175デフォルトの名無しさん2007/02/08(木) 14:11:40
>>172
全ユーザに関する設定って例えば何?
0176デフォルトの名無しさん2007/02/08(木) 15:03:33
170です。

%ALLUSERSPROFILE%に置くことはやはり厳しいのかな?
XP,2000と同じように作りたかったのですが、、、。

172さんのおっしゃる通りアプリ自身の設定ってほんとどこに置くんでしょう?
0177デフォルトの名無しさん2007/02/08(木) 15:29:15
>>176
アプリ自身の設定って例えば何?
0178デフォルトの名無しさん2007/02/08(木) 16:40:23
全ユーザ共通の設定って、そんなもん別に必要ないじゃん
0179デフォルトの名無しさん2007/02/08(木) 16:50:08
UNIXで言うなら、rootの人が設定するユーザのための初期値で
ユーザをADDするとその設定ファイルをユーザのHOMEにコピーして初期値とする的なものじゃねーの
0180デフォルトの名無しさん2007/02/08(木) 17:09:46
全部c:\に置いちゃえばいいんだよ!!!!!
0181デフォルトの名無しさん2007/02/08(木) 17:12:35
DOS時代じゃあるまいし
0182デフォルトの名無しさん2007/02/08(木) 17:28:03
バイナリシリアライズしてレジストリに(ry
■ このスレッドは過去ログ倉庫に格納されています