我訂閱了通知::RegisterDeviceNotification()
(msdn)。處理完一些細節後(消息WM_DEVICECHANGE
(msdn)等),我有DEV_BROADCAST_DEVICEINTERFACE
(msdn)結構。檢測手機或相機的插入
例如,我如何知道插入的設備是手機還是照相機?
我使用Google搜索 Windows便攜式設備(msdn)。可以使用DEV_BROADCAST_DEVICEINTERFACE::dbcc_name
作爲IPortableDevice::Open
(msdn)的參數。有了這個有可能獲得一個設備(msdn)的 「支持」 的內容的列表,例如:
WPD_CONTENT_TYPE_IMAGE
WPD_CONTENT_TYPE_AUDIO
WPD_CONTENT_TYPE_PLAYLIST
WPD_CONTENT_TYPE_VIDEO
WPD_CONTENT_TYPE_DOCUMENT
WPD_CONTENT_TYPE_UNSPECIFIED
WPD_CONTENT_TYPE_FOLDER
但我不知道,例如,相機只支持WPD_CONTENT_TYPE_VIDEO
,WPD_CONTENT_TYPE_IMAGE
和WPD_CONTENT_TYPE_FOLDER
?
另一個框架是 Windows圖像採集(msdn),但這個東西沒有看到手機(只有掃描儀,也許是別的東西,我不知道)。
你問什麼硬件供應商決定支持?這就是您獲得支持內容列表的原因。 Cach供應商可以選擇他們將要支持的內容,但沒有任何魔術組合。 – Dan
不,我問 - 有沒有辦法檢測手機和相機插入。因爲知道 - 我不知道如何看到他們之間的差異。 Everithing我知道的是,用戶插入設備,它是一個媒體設備.. – grisha