如何注册事件处理程序
一个设备可能会生成许多事件,每个事件可以选择由多个不同的处理程序之一进行处理。 在 Windows XP 中,定义了以下事件:
- DeviceArrival
- DeviceRemoval
- MediaArrival
- MediaRemoval
Instructions
事件处理程序在 EventHandlers 键下定义。 事件处理程序键的值是检测到事件时用户必须从中选择的每个处理程序的名称。 没有与这些条目关联的数据值。 下面是名为 MyNewRemovalEventHandler 的自定义事件处理程序的示例定义,它向用户提供这些处理程序的可能性:
- 在名为 Contoso, Inc 的公司制造的设备上检测到事件时要使用的处理程序。
- 在名为 Fabrikam, Inc 的公司制造的设备上检测到事件时要使用的处理程序。
- 要用于所有其他情况的处理程序。
HKEY_LOCAL_MACHINE
SOFTWARE
Microsoft
Windows
CurrentVersion
Explorer
AutoplayHandlers
EventHandlers
MyNewRemovalEventHandler
CompanyContosoHandler [REG_SZ]
CompanyFabrikamHandler [REG_SZ]
MyRemovalHandler [REG_SZ]
定义事件处理程序后,必须为以下事件之一的设备处理程序注册该事件处理程序:DeviceArrival、DeviceRemoval、MediaArrival 或 MediaRemoval。 前面定义的 MyNewRemovalEventHandler 用于名为 MyDeviceHandler 的自定义设备处理程序下的 DeviceRemoval,并在以下示例中为此进行了定义。 同样,注册表值没有数据组件。
HKEY_LOCAL_MACHINE
SOFTWARE
Microsoft
Windows
CurrentVersion
Explorer
AutoplayHandlers
DeviceHandlers
EventHandlers
DeviceRemoval
MyNewRemovalEventHandler
Windows XP 预定义以下 EventHandler 集。
EventHandlers 密钥 | 媒体或文件类型 |
---|---|
HandleCDBurningOnArrival | 空白 CD-R/CD-RW |
ShowPicturesOnArrival | 图片文件 |
PlayMusicFilesOnArrival | 音乐文件 |
PlayVideoFilesOnArrival | 视频文件 |
PlayCDAudioOnArrival | 音频 CD (REDBOOK 格式 CD 与音频轨) |
PlayDVDMovieOnArrival | DVD 电影 |
除上述事件外,Windows Vista 还预定义了以下一组 EventHandler。
EventHandlers 密钥 | 媒体或文件类型 |
---|---|
PlaySuperVideoCDMovieOnArrival | 超级视频CD 电影 |
PlayVideoCDMovieOnArrival | VideoCD 电影 |
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈