Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Collapse the table of content
Expand the table of content


The framework calls this member function to notify an application or device driver of a change to the hardware configuration of a device or the computer.

afx_msg BOOL OnDeviceChange(
   UINT nEventType,
   DWORD_PTR dwData 


An event type. See the Remarks section for a description of the available values
The address of a structure that contains event-specific data. Its meaning depends on the given event.


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 forcefully removes of a device, it may not send a DBT_DEVICEQUERYREMOVE message before doing so.

The nEvent parameter can be one of these values:

  • DBT_DEVICEARRIVAL   A device has been inserted and is now available.
  • DBT_DEVICEQUERYREMOVE   Permission to remove a device is requested. Any application can deny this request and cancel the removal.
  • DBT_DEVICEQUERYREMOVEFAILED   Request to remove a device has been canceled.
  • DBT_DEVICEREMOVEPENDING   Device is about to be removed. Cannot be denied.
  • DBT_DEVICEREMOVECOMPLETE   Device has been removed.
  • DBT_DEVICETYPESPECIFIC   Device-specific event.
  • DBT_CONFIGCHANGED   Current configuration has changed.
  • DBT_DEVNODES_CHANGED   Device node has changed.
Note   This member function is called by the framework to allow your application to handle a Windows message. The parameters passed to your function reflect the parameters received by the framework when the message was received. If you call the base-class implementation of this function, that implementation will use the parameters originally passed with the message and not the parameters you supply to the function.

See Also

CWnd Overview | Class Members | Hierarchy Chart | WM_DEVICECHANGE

© 2015 Microsoft