WM_DEVICECHANGE
The
WM_DEVICECHANGE device message notifies an application or device driver of a
change to the hardware configuration of a device or the computer.
Event = (UINT) wParam;
dwData = (DWORD) lParam;
Parameters
Event
Event type.
This parameter can be one of the following values:
Value |
Meaning |
DBT_CONFIGCHANGECANCELED |
A request
to change the current configuration (dock or undock) has been canceled. |
DBT_CONFIGCHANGED |
The current
configuration has changed, due to a dock or undock. |
DBT_DEVICEARRIVAL |
A device
has been inserted and is now available. |
DBT_DEVICEQUERYREMOVE |
Permission
is requested to remove a device. Any application can deny this request and cancel
the removal. |
DBT_DEVICEQUERYREMOVEFAILED |
A request
to remove a device has been canceled. |
DBT_DEVICEREMOVECOMPLETE |
A device
has been removed. |
DBT_DEVICEREMOVEPENDING |
A device is
about to be removed. Cannot be denied. |
DBT_DEVICETYPESPECIFIC |
A
device-specific event has occurred. |
DBT_QUERYCHANGECONFIG |
Permission
is requested to change the current configuration (dock or undock). |
DBT_USERDEFINED |
The meaning
of this message is user-defined. |
dwData
Address of a
structure that contains event-specific data. Its meaning depends on the given
event.
Return Values
Return TRUE
to grant a requested action.
Return
QUERY_BROADCAST_DENY to deny a requested action.
Remarks
For devices
that offer software-controllable features, such as ejection and locking, the
operating system typically sends a DBT_DEVICEREMOVEPENDING message to let
applications and device drivers end their use of the device gracefully.
If the
operating system forcibly removes a device, it may not send a
DBT_DEVICEQUERYREMOVE message before doing so.
DBT_CONFIGCHANGECANCELED, DBT_CONFIGCHANGED4IS8ZQ, DBT_DEVICEQUERYREMOVE , DBT_DEVICEQUERYREMOVEFAILED , DBT_DEVICEREMOVECOMPLETE , DBT_DEVICEREMOVEPENDING , DBT_DEVICETYPESPECIFIC , DBT_QUERYCHANGECONFIG , DBT_USERDEFINED