拡張カーネル v2.2iと RtlDosSearchPath_U
Windows 2000 Kernel32 改造計画【BM】
拡張カーネル v2.2iで Spyware Terminator 2012を Windows 2000 で 動作するようにしましたが、パス検索のアルゴリズムである非公開API RtlDosSearchPath_U を使用しました。
int WINAPI RtlDosSearchPath_U(wchar_t *path,wchar_t *dll,wchar_t *ext,DWORD size, wchar_t *instr, wchar_t **outstr);
関数の中身はこんな感じです
path... 検索するパス(形式は 環境変数PATHと同じ)
dll... 探すファイル
ext... 追加で拡張子を入れる場合
size... 検索結果ファイルの最大サイズ
instr... 検索結果ファイル名の格納アドレス
outstr... 検索結果ファイル名の格納アドレスのポインタ
拡張子のない DLL ファイルを入れた場合、通常はエラー終了しますが、同じパラメータで ext に L".DLL"を代入して再コールするように 書き換えたら動作するようになりました・ω・
Comments