アカウント名:
パスワード:
DllMainが実行される。
アイコンを得るときは、LoadLibrary じゃなくて LoadLibraryEx を LOAD_LIBRARY_AS_DATAFILE 付きで呼び出そうってことなのかなぁ?
1. GetOpenFileNameでファイルを開くダイアログを開く2. 上記APIでカレントディレクトリが変更される(undocumentedな挙動?)3. 自アプリ用のDLLをロードするのにファイル名だけを指定してLoadLibraryを呼ぶ4. 変更されたカレントフォルダから最初にDLLが探される5. 悪意のある人間が作成した偽DLLをロード6. おわた
こういうシナリオじゃないの?
2. 上記APIでカレントディレクトリが変更される(undocumentedな挙動?)
カレントディレクトリが変更されるのは仕様ですよ。OFN_NOCHANGEDIR定数 [microsoft.com]をFlagsに指定してないから変更されているだけです。関連MSKB:109553 [microsoft.com]
訂正ありがとうございます。GetOpenFileNameの方しか確認してませんでした。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
Stay hungry, Stay foolish. -- Steven Paul Jobs
よくわからない。 (スコア:0)
既存のDLLが差し替えられるということ?
でもそれって、機能しないよね?
教えてエロい人!
# 参照先はぜんぜんわからんかったorz
Re: (スコア:2, 参考になる)
DllMainが実行される。
アイコンを得るときは、LoadLibrary じゃなくて LoadLibraryEx を LOAD_LIBRARY_AS_DATAFILE 付きで呼び出そうってことなのかなぁ?
Re: (スコア:0)
1. GetOpenFileNameでファイルを開くダイアログを開く
2. 上記APIでカレントディレクトリが変更される(undocumentedな挙動?)
3. 自アプリ用のDLLをロードするのにファイル名だけを指定してLoadLibraryを呼ぶ
4. 変更されたカレントフォルダから最初にDLLが探される
5. 悪意のある人間が作成した偽DLLをロード
6. おわた
こういうシナリオじゃないの?
Re:よくわからない。 (スコア:1)
カレントディレクトリが変更されるのは仕様ですよ。
OFN_NOCHANGEDIR定数 [microsoft.com]をFlagsに指定してないから変更されているだけです。
関連MSKB:109553 [microsoft.com]
Re: (スコア:0)
訂正ありがとうございます。
GetOpenFileNameの方しか確認してませんでした。