5

非常に単純なドライバーを作成しようとしています。その唯一の目的は、「PsSetCreateProcessNotifyRoutine」を登録し、カーネルから受信したコールバックで、どのプロセスが開始および停止されたかについて Win32 アプリケーションに通知することです。

このような単純なドライバーを「DriverEntry」と「DriverUnload」でビルドし、DDK でコンパイルする方法しか知りません。しかし、実際に通信を実装する方法がわかりません。IOCTL で実行できることはわかっています。しかし、それを超えて私は暗闇の中にいます。Delphiでそれを行う方法の簡単な例が見つかりません。私はそれができることだけを知っています。

だから私が探しているのは、それを行う方法についての簡単でわかりやすいチュートリアル、または付属のドライバーコードを使用したサンプルの Delphi プログラムです。コミュニケーションの方法は他にもあるかもしれません。

どんな助けでも感謝します。

4

1 に答える 1

2

Delphi かどうかは関係ありません。関数 DeviceIoControl を使用する必要があります。それについては、MSDNの記事を参照してください。

つまり、使用可能なセットからいくつかのIOCTL コードを選択する必要があります。次に、これらのコードのいずれかで DeviceIoControl を呼び出してデータを渡し、ドライバーでその要求を処理して別のものを返します。

ユーザーモードで ReadFile または WriteFile を呼び出すことによって生成されるものなど、標準の IOCTLS を処理することもできます。

「Delphiでそれを行う方法のチュートリアル」を探すのではなく、チュートリアルを探してください。それらはすべて同じで、言語に関係なく、純粋な Win32/Native API のものです。たとえば、これをググってみました

于 2010-11-29T16:48:00.887 に答える