通知
すべてクリア
Topic starter
2003年7月17日 8:50 PM
CreateRemoteThread のスレッド関数は対象プロセス内の関数でなければなりませんが、
その引数は、対象プロセスのメモリ空間内に VirtualAllocEx で確保しなければならな
いのでしょうか?
MSDN にはそのような記述は見当たりませんし、呼び出し側プロセス内の変数を渡しても
正常に実行はできるのですが、今やろうとしていることのサンプルプログラムでは、ど
れを見ても対象プロセス内に確保しているので気になりまして。
ちなみにやろうとしていることというのは、あるプロセスに対し、Win32 API の呼び出
しをフックして動作を変えるということです。
CreateRemoteThread のスレッド関数に LoadLibrary を指定し、その引数に自作 DLL を
指定してやることで、そのプロセスに自作 DLL をロードさせるということをやろうとし
ています。
#CreateRemoteThread ってこのくらいしか使い道ない気がする…
Topic starter
2003年7月17日 9:17 PM
自己解決。
呼び出し側プロセス内の変数を渡しても成功していたのは、自プロセスだけでテストし
ていたためだったようです。
他プロセスに対して実行するには、対象プロセス内に確保しないとダメなようです。
板汚し、申し訳ありませんでした。