0

Detours を使用して特定の WIN32 呼び出しをログに記録するアプリケーション (DLL) に取り組んでいます。フィルターを通過するターゲット アプリケーションに挿入されます。アプリケーションのエントリ ポイントの最初の命令から始めて、アプリケーションが行うすべての呼び出しを完全にログに記録する必要があります。

現在、できればターゲット アプリケーションが他の呼び出しを行わずに、自分のアプリケーション (常に実行されるアプリケーション) に DLL をできるだけ速く挿入する方法を探しています。

これを達成する方法はありますか?

4

2 に答える 2

3

AppInit_DLLs レジストリ キーを使用して、DLL をプロセスにロードできます。DLL_PROCESS_ATTACHの実行中にdll がロードされUser32.dllます。通常のアプリケーションの場合、これはアプリケーション コードを実行する前に行う必要があります。

ただし、AppInit_DLLs の名前を Deadlock_Or_Crash_Randomly_DLLs に変更する必要があることに注意してください。

于 2013-10-20T20:27:47.270 に答える
1

私の知る限り、Windows でこれを行う簡単な方法はありません。

オプションは次のとおりです。

  1. すべてのプロセスで CreateProcess (またはそれ以下) 関数をフックします。新しいプロセスが作成されたら、引数を変更して、必要に応じて中断、注入、および再開としてプロセスを作成します。
  2. ドライバーの使用。
于 2013-10-20T20:49:08.137 に答える