对于我的应用程序,我需要一个连接到计算机的所有MTP / PTP摄像机的列表。我正在使用以下代码生成系统上所有WPD设备的列表:
...
hr = pPortableDeviceManager->GetDevices(pPnpDeviceIDs, &cPnPDeviceIDs);
if (SUCCEEDED(hr)) {
for (dwIndex = 0; dwIndex < cPnPDeviceIDs; dwIndex++) {
...
}
}
但此列表还包括读卡器,扫描仪和其他设备。是否有一种简单的方法来过滤掉这些设备,或者我是否真的需要打开每个设备并获取设备属性等?