DriverCallback

Calls a callback function, sends a message to a window, or unblocks a thread. The action depends on the value of the notification flag. This function is intended to be used only within the DriverProc function of an installable driver.

BOOLEAN DriverCallback(DWORD dwCallBack, DWORD dwFlags, HDRVR hdrvr,
    DWORD msg, DWORD dwUser, DWORD dwParam1, DWORD dwParam2);
 

Parameters

dwCallBack
Address of the callback function, a window handle, or a task handle, depending on the flag specified in the dwFlags parameter.
dwFlags
Notification flags. It can be one of these values:
DCB_NOSWITCH The system is prevented from switching stacks. This value is only used if enough stack space for the callback function is known to exist.
DCB_FUNCTION The dwCallback parameter is the address of an application-defined callback function. The system sends the callback message to the callback function.
DCB_WINDOW The dwCallback parameter is the handle of an application-defined window. The system sends subsequent notifications to the window.
DCB_TASK The dwCallback parameter is the handle of an application or task. The system sends subsequent notifications to the application or task.

hdrvr
Handle of the installable driver instance.
msg
Message value.
dwUser
32-bit user-instance data supplied by the application when the device was opened.
dwParam1 and dwParam2
32-bit message-dependent parameter.

Return Value

Returns TRUE if successful or FALSE if a parameter is invalid or the task's message queue is full.

Remarks

The client specifies how to notify it when the device is opened. The DCB_FUNCTION and DCB_WINDOW flags are equivalent to the high-order word of the corresponding flags CALLBACK_FUNCTION and CALLBACK_WINDOW specified in the lParam2 parameter of the DRV_OPEN message when the device was opened.

If notification is accomplished with a callback function, hdrvr, msg, dwUser, dwParam1, and dwParam2 are passed to the callback function. If notification is accomplished by means of a window, only msg, hdrvr, and dwParam1 are passed to the window.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in digitalv.h.
  Import Library: Use winmm.lib.