DriverCallback function (mmiscapi.h)

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.

Syntax

BOOL DriverCallback(
  DWORD_PTR dwCallback,
  DWORD     dwFlags,
  HDRVR     hDevice,
  DWORD     dwMsg,
  DWORD_PTR dwUser,
  DWORD_PTR dwParam1,
  DWORD_PTR 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:

Value Meaning
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.

hDevice

Handle of the installable driver instance.

dwMsg

Message value.

dwUser

32-bit user-instance data supplied by the application when the device was opened.

dwParam1

32-bit message-dependent parameter.

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.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header mmiscapi.h (include Mmiscapi.h)
Library Winmm.lib
DLL Winmm.dll

See also

Driver Functions

Installable Drivers