2

別のコンソールアプリケーションを呼び出していくつかのパラメーターを渡すアプリケーションがあります (コンソールアプリはビデオ/オーディオ変換アプリです) ... プログラムで「スパイ」するか、shellexecute/ をフック/監視する以外に渡されたパラメーターをキャッチする方法はありますか? CreateThreadなど?

4

3 に答える 3

4

オリジナルを呼び出してすべてのパラメーターを渡す実行可能ファイルを自分で作成します。次に、オリジナルを別の場所に移動し、exe に置き換えます。その後、プログラムは、すべてのパラメーターを含むすべての呼び出しをログに記録できます。

于 2009-05-01T08:03:47.687 に答える
2

はい、あります-あなたが書いているように、Process Explorerはそれを行うことができ、同じ手法を採用できます. しかし、私の知る限り、Platform SDK からのwinternl.hファイルの Delphi 変換は存在しないため、さらに面倒で困難です。また、これは非常にバージョン固有であり、次の Windows バージョンで壊れる可能性があります。これが 64 ビット プロセス (32 ビット プロセスから) で機能するかどうかも明確ではありません。

本当にやりたい場合は、Matt Pietrek によるこのブログ投稿と、CodeProject の記事「Read Environment Strings of Remote process」で必要な情報を見つけることができます。

クローズド ソースの商用プログラムに使用する予定がない場合は、ReactOS プロジェクトの (GPL ライセンス)注釈付きバージョンのwinternl.hファイルを調べることも役立つでしょう。

于 2009-05-01T13:50:24.093 に答える
0

これは 1992 年以来の Win32 FAQ です。PEB を読んでください。Win32 エキスパート グループ
を参照してください。

于 2009-05-03T09:01:25.147 に答える