Metodo IPortableDeviceManager::GetPrivateDevices (portabledeviceapi.h)
Il metodo GetPrivateDevices recupera un elenco di dispositivi portatili privati connessi al computer. Questi dispositivi privati sono accessibili solo tramite un'applicazione progettata per questi dispositivi specifici.
Sintassi
HRESULT GetPrivateDevices(
[in, out] LPWSTR *pPnPDeviceIDs,
[in, out] DWORD *pcPnPDeviceIDs
);
Parametri
[in, out] pPnPDeviceIDs
Matrice allocata dal chiamante di puntatori di stringa che contiene i nomi Plug and Play di tutti i dispositivi connessi. Per informazioni sulle dimensioni necessarie per questo parametro, chiamare prima questo metodo con questo parametro impostato su NULL e pcPnPDeviceIDs impostato su zero e quindi allocare un buffer in base al valore recuperato da pcPnPDeviceIDs. Questi nomi possono essere usati da IPortableDevice::Open per creare una connessione a un dispositivo.
[in, out] pcPnPDeviceIDs
In input, il numero di valori che pPnPDeviceID può contenere. In output, un puntatore al numero di dispositivi effettivamente scritti in pPnPDeviceID.
Valore restituito
Il metodo restituisce un HRESULT. I valori possibili includono, ma non sono limitati a, quelli indicati nella tabella seguente.
Codice restituito | Descrizione |
---|---|
|
Il metodo è riuscito. |
|
Almeno uno degli argomenti necessari è un puntatore NULL . |
|
Il buffer pPnPDeviceIDs è troppo piccolo per contenere tutti i valori richiesti, ma i valori pcPnPDeviceIDs sono stati scritti in pPnPDeviceIDs. |
Commenti
Per scrivere un'applicazione che comunica con un dispositivo privato, è necessario avere conoscenza della funzionalità personalizzata esposta da un determinato driver di dispositivo. La descrizione di questa funzionalità deve essere ottenuta dal produttore del dispositivo.
L'elenco dei dispositivi viene generato quando viene creata un'istanza di Gestione dispositivi; non viene aggiornato come i dispositivi si connettono e si disconnetteno. Per aggiornare l'elenco dei dispositivi connessi, chiamare RefreshDeviceList.
L'API alloca la memoria per ogni stringa a cui punta la matrice pPnPDeviceIDs . Una volta che l'applicazione non necessita più di queste stringhe, deve scorrere questa matrice e liberare la memoria associata chiamando la funzione CoTaskMemFree .
Un dispositivo privato potrebbe non rispondere correttamente alle chiamate di funzione dispositivi portatili Windows standard che eseguono l'enumerazione degli oggetti, il trasferimento delle risorse, il recupero delle funzionalità del dispositivo e così via.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | portabledeviceapi.h |
Libreria | PortableDeviceGUIDs.lib |