私はモニタープロセスの基本的なドライバーを書き、プロセスパスを取得しようとしています。を使用してプロセス情報を
作成および取得します
が、関数で を使用して現在のプロセスを取得しようとすると、別のプロセスを実行する現在のプロセスが得られます。 PsSetCreateProcessNotifyRoutine
ZwQueryInformationProcess
ProcessCallback
HANDLE
NtCurrentProcess
例えば:
myProgram.exe を c:\ で実行しようとすると、Windows エクスプローラーを使用して C:\ に移動し、myProgram.exe を実行すると、myProgram.exe が explorer.exe 内で実行されるため、ドライバーが explorer.exe パスを提供します。
ProcessCallback ヘッダーに processID があります
void ProcessCallback(
IN HANDLE hParentId,
IN HANDLE hProcessId,
IN BOOLEAN bCreate
)
プロセスハンドルに変換できますか?