DriverCallback 関数 (mmiscapi.h)

コールバック関数を呼び出すか、ウィンドウにメッセージを送信するか、スレッドのブロックを解除します。 アクションは、通知フラグの値によって異なります。 この関数は、インストール可能な ドライバーの DriverProc 関数内でのみ使用することを目的としています。

構文

BOOL DriverCallback(
  DWORD_PTR dwCallback,
  DWORD     dwFlags,
  HDRVR     hDevice,
  DWORD     dwMsg,
  DWORD_PTR dwUser,
  DWORD_PTR dwParam1,
  DWORD_PTR dwParam2
);

パラメーター

dwCallback

dwFlags パラメーターで指定されたフラグに応じて、コールバック関数、ウィンドウ ハンドル、またはタスク ハンドルのアドレス。

dwFlags

通知フラグ。 次のいずれかの値とすることができます。

意味
DCB_NOSWITCH
システムがスタックを切り替えないようにします。 この値は、コールバック関数に十分なスタック領域が存在することがわかっている場合にのみ使用されます。
DCB_FUNCTION
dwCallback パラメーターは、アプリケーション定義のコールバック関数のアドレスです。 システムはコールバック メッセージをコールバック関数に送信します。
DCB_WINDOW
dwCallback パラメーターは、アプリケーション定義ウィンドウのハンドルです。 後続の通知がウィンドウに送信されます。
DCB_TASK
dwCallback パラメーターは、アプリケーションまたはタスクのハンドルです。 システムは、後続の通知をアプリケーションまたはタスクに送信します。

hDevice

インストール可能なドライバー インスタンスのハンドル。

dwMsg

メッセージ値。

dwUser

デバイスが開かれたときにアプリケーションによって提供される 32 ビットのユーザー インスタンス データ。

dwParam1

32 ビットのメッセージ依存パラメーター。

dwParam2

32 ビットのメッセージ依存パラメーター。

戻り値

パラメーターが無効であるか、タスクのメッセージ キューがいっぱいの場合は TRUE を返します。成功した場合は FALSE を 返します。

注釈

クライアントは、デバイスが開かれたときに通知する方法を指定します。 DCB_FUNCTIONフラグとDCB_WINDOW フラグは、対応するフラグ CALLBACK_FUNCTIONの上位ワードと同じであり、デバイスを開いたときにDRV_OPEN メッセージのlParam2 パラメーターで指定CALLBACK_WINDOW。

コールバック関数を使用して通知を実行すると、 hdrvrmsgdwUserdwParam1dwParam2 がコールバック関数に渡されます。 ウィンドウによって通知が行われると、 msghdrvrdwParam1 のみがウィンドウに渡されます。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー mmiscapi.h (Mmiscapi.h を含む)
Library Winmm.lib
[DLL] Winmm.dll

こちらもご覧ください

ドライバーの機能

インストール可能なドライバー