0
4

1 に答える 1

1

CreateEvent、SetEvent、および WaitForSingleObject を使用できます。イベントを通知する必要がある実行可能ファイルによって dll がロードされた場合、必要なのはそれだけです。個別の実行可能ファイルからのものである場合は、少しだけ複雑になります。CreateEvent を呼び出すと、名前付きイベントが作成されます。この名前付きイベントには、複数のプロセスからアクセスできます。ログインしているさまざまなユーザー間で機能する必要がある場合は、名前の前に「Global\」を付けると、すべてのユーザーのすべてのプロセスで同じイベントになります。

//in dll
HANDLE eventHandle = CreateEvent( NULL, TRUE, FALSE, "Global\\My-Unique-Trigger-Event" );
//do stuff
WaitForSingleObject( eventHandle, INFINITE);
//exit

//in executable
HANDLE eventHandle = CreateEvent( NULL, TRUE, FALSE, "Global\\My-Unique-Trigger-Event" );
SetEvent( eventHandle );
于 2011-06-21T16:09:43.603 に答える