Windows 便携式设备 - 创建/复制/删除新文件时通知
Windows Portable Device - Notify when a new file is created / copied / deleted
使用(IPortableDeviceEventCallback
).
是否可以在文件从/复制到/存储设备时收到通知
到目前为止,我只在闪存驱动器断开连接或用户从外部更改其名称时才收到通知。
编辑:我有兴趣接收WPD_EVENT_OBJECT_ADDED
活动。
IPortableDeviceCapabilities::GetSupportedEvents
显示支持所需的事件,但在复制新文件时没有发送任何内容
WPD_EVENT_OBJECT_ADDED对应MTP事件ObjectAdded。
https://msdn.microsoft.com/en-us/microsoft-r/dn932706
我认为真正发送什么事件取决于MTP协议在具体便携设备上的具体实现。
我相信 WPD API 主要目的是管理便携式设备,如手机和音乐播放器,使用 USB 闪存驱动器的访问和方法仅作为某种兼容性层输出,可能不包含所有功能。
如果您不想从实施 MTP 的便携式设备接收此类通知,而只想从 USB 闪存驱动器接收此类通知,您应该查看例如文件系统微过滤器
https://msdn.microsoft.com/en-us/windows/hardware/drivers/ifs/file-system-minifilter-drivers
他们可以为您提供所需的回电。
使用(IPortableDeviceEventCallback
).
到目前为止,我只在闪存驱动器断开连接或用户从外部更改其名称时才收到通知。
编辑:我有兴趣接收WPD_EVENT_OBJECT_ADDED
活动。
IPortableDeviceCapabilities::GetSupportedEvents
显示支持所需的事件,但在复制新文件时没有发送任何内容
WPD_EVENT_OBJECT_ADDED对应MTP事件ObjectAdded。 https://msdn.microsoft.com/en-us/microsoft-r/dn932706
我认为真正发送什么事件取决于MTP协议在具体便携设备上的具体实现。
我相信 WPD API 主要目的是管理便携式设备,如手机和音乐播放器,使用 USB 闪存驱动器的访问和方法仅作为某种兼容性层输出,可能不包含所有功能。
如果您不想从实施 MTP 的便携式设备接收此类通知,而只想从 USB 闪存驱动器接收此类通知,您应该查看例如文件系统微过滤器 https://msdn.microsoft.com/en-us/windows/hardware/drivers/ifs/file-system-minifilter-drivers
他们可以为您提供所需的回电。