系统将一组默认设备更改事件广播到所有应用程序和服务。 无需注册才能接收这些默认事件。 有关详细信息,请参阅 RegisterDeviceNotification 中的“备注”部分。 若要指定应用程序或服务应接收的其他事件,请使用 RegisterDeviceNotification 函数。
当应用程序或服务调用 RegisterDeviceNotification时,它还指定将接收通知事件的窗口。 服务可以指定服务状态句柄,而不是窗口句柄。 如果服务指定其服务状态句柄,则其服务控制处理程序将收到通知事件。 有关详细信息,请参阅 HandlerEx。
请务必尽快处理即插即用设备事件。 否则,系统可能会无响应。 如果事件处理程序执行可能阻止执行的作(例如 I/O),最好启动另一个线程以异步方式执行该作。
RegisterDeviceNotification 返回的设备通知句柄必须通过调用不再需要 UnregisterDeviceNotification 函数来关闭。
相关主题