0

IRP バッファーから値を抽出するドライバーを作成しました。このキーワードに基づいて、IRP を渡すか破棄する必要があります。そのため、カーネル モード ドライバーからは簡単ではないデータベースと通信する必要があります。したがって、これを行うためにアプリケーションまたはexeを使用しています。これは、IRPを渡すか破棄するかに基づいて、trueまたはfalseになります。

クライアントアプリでデータを取得するアプリとドライバを連携させたい。

パイプとして機能する一時ファイルを使用することを考えました。

何か提案してください。

4

1 に答える 1

1

私は IOCTL を使用します。

データベースと通信するアプリケーションは、1 つ以上の IOCTL をドライバーに送信することから始まります。このタイプの IOCTL を IOCTL-1 と呼びましょう。

IOCTL-1 の完了は、ドライバーからデータベースへの要求を示します。要求の詳細は、IOCTL 出力バッファーで渡すことができます。

アプリケーションは、IOCTL-1 の完了を検出し、要求の詳細を取得し、クエリを実行して、別の IOCTL (IOCTL-2) を使用してドライバーに結果を渡します。次に、ドライバーが別の要求を発行できるように、IOCTL-1 を再送信します。

于 2012-06-27T18:44:56.953 に答える