|
|
 |
| Doc ID: |
38 |
| 製品: |
WinDriver |
| Version: |
-- |
Kernel PlugIn で、WD_Transfer() および WD_UsbTransfer() を呼ぶ際に、これらの関数へ渡すために、hWD をどこで取得しますか? |
Kernel PlugIn から WinDriver のカーネル モジュール (hWD) へのハンドルを取得するには、以下の何れかを実行してください:
- Kernel PlugIn から直接 WD_Open() を呼びます。
注意: WD_UsbTransfer() 関数は、WinDriver v5.22 以前まで使用されていた古い USB API です。Kernel PlugIn から WinDriver v6.00 以降の USB API を使用することはできません。Kernel PlugIn から、WD_UsbTransfer() 関数などの古い WinDriver USB API を呼ぶには、このオプションを使用する必要があります。たとえば、Kernel PlugIn で使用できる WinDriver へのハンドルを取得するには、カーネルで直接 WD_Open () 関数を呼びます。WinDriver USB 関数でユーザー モードから渡されるハンドルを使用することはできません。
- PCI/ISA の場合、WD_KernelPlugInOpen() でユーザー モードから渡され、Kernel PlugIn のコールバック関数 KP_Open() 関数の2番目の引数として受信される hWD ハンドルを使用することもできます。
もう一方は、WD_KERNEL_PLUGIN_CALL 構造体の pData フィールドを使用して、ユーザー モードから Kernel PlugIn へハンドルを渡すこともできます。ユーザー モードで WD_KernelPlugInCall() 関数への呼び出しに使用され、Kernel PlugIn の KP_Call() へのコールバックの結果です。
WinDriver へのハンドルを取得後、WD_Transfer() / WD_UsbTransfer() 関数 (または、引数として WinDriver へのハンドルを受信する WinDriver API) への呼び出しはユーザー モードと同様です。 |
|
|