IPortableDeviceManager::GetPrivateDevices-Methode (portabledeviceapi.h)
Die GetPrivateDevices-Methode ruft eine Liste der privaten tragbaren Geräte ab, die mit dem Computer verbunden sind. Auf diese privaten Geräte kann nur über eine Anwendung zugegriffen werden, die für diese speziellen Geräte konzipiert ist.
Syntax
HRESULT GetPrivateDevices(
[in, out] LPWSTR *pPnPDeviceIDs,
[in, out] DWORD *pcPnPDeviceIDs
);
Parameter
[in, out] pPnPDeviceIDs
Ein vom Aufrufer zugewiesenes Array von Zeichenfolgenzeigern, das die Plug & Play Namen aller verbundenen Geräte enthält. Um die erforderliche Größe für diesen Parameter zu ermitteln, rufen Sie zuerst diese Methode auf, wobei dieser Parameter auf NULL und pcPnPDeviceIDs auf Null festgelegt ist, und ordnen Sie dann einen Puffer gemäß dem von pcPnPDeviceIDs abgerufenen Wert zu. Diese Namen können von IPortableDevice::Open verwendet werden, um eine Verbindung mit einem Gerät herzustellen.
[in, out] pcPnPDeviceIDs
Bei der Eingabe die Anzahl der Werte, die pPnPDeviceIDs enthalten können. Bei der Ausgabe ein Zeiger auf die Anzahl der Tatsächlich in pPnPDeviceIDs geschriebenen Geräte.
Rückgabewert
Die Methode gibt ein HRESULT zurück. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich ausgeführt. |
|
Mindestens eines der erforderlichen Argumente war ein NULL-Zeiger . |
|
Der pPnPDeviceIDs-Puffer ist zu klein, um alle angeforderten Werte aufzunehmen, aber pcPnPDeviceIDs-Werte wurden in pPnPDeviceIDs geschrieben. |
Hinweise
Um eine Anwendung zu schreiben, die mit einem privaten Gerät kommuniziert, müssen Sie Über kenntnisse über die benutzerdefinierten Funktionen verfügen, die von einem bestimmten Gerätetreiber verfügbar gemacht werden. Die Beschreibung dieser Funktionalität muss vom Gerätehersteller abgerufen werden.
Die Liste der Geräte wird generiert, wenn der Geräte-Manager instanziiert wird. Es wird nicht aktualisiert, wenn Geräte eine Verbindung herstellen und trennen. Um die Liste der verbundenen Geräte zu aktualisieren, rufen Sie RefreshDeviceList auf.
Die API weist den Arbeitsspeicher für jede Zeichenfolge zu, auf die das pPnPDeviceIDs-Array verweist. Sobald Ihre Anwendung diese Zeichenfolgen nicht mehr benötigt, muss sie dieses Array durchlaufen und den zugeordneten Arbeitsspeicher durch aufrufen der CoTaskMemFree-Funktion freigeben.
Ein privates Gerät reagiert möglicherweise nicht ordnungsgemäß auf die Standardmäßigen Windows Portable Devices-Funktionsaufrufe, die Objektaufzählung, Ressourcenübertragung, Abrufen von Gerätefunktionen usw. ausführen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | portabledeviceapi.h |
Bibliothek | PortableDeviceGUIDs.lib |