Método IPortableDeviceManager::GetDevices (portabledeviceapi.h)
Recupera una lista de dispositivos portátiles conectados al equipo.
Sintaxis
HRESULT GetDevices(
[in, out] LPWSTR *pPnPDeviceIDs,
[in, out] DWORD *pcPnPDeviceIDs
);
Parámetros
[in, out] pPnPDeviceIDs
Matriz asignada por el llamador de punteros de cadena que contiene los nombres Plug and Play de todos los dispositivos conectados. Para obtener información sobre el tamaño necesario para este parámetro, primero llame a este método con este parámetro establecido en NULL y pcPnPDeviceIDs establecido en cero y, a continuación, asigne un búfer según el valor recuperado por pcPnPDeviceIDs. IPortableDevice::Open puede usar estos nombres para crear una conexión a un dispositivo.
[in, out] pcPnPDeviceIDs
En la entrada, el número de valores que pPnPDeviceIDs puede contener. En la salida, un puntero al número de dispositivos realmente escritos en pPnPDeviceIDs.
Valor devuelto
El método devuelve un valor HRESULT. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros.
Código devuelto | Descripción |
---|---|
|
El método se ha llevado a cabo de forma correcta. |
|
Al menos uno de los argumentos necesarios era un puntero NULL . |
|
El búfer pPnPDeviceIDs es demasiado pequeño para contener todos los valores solicitados, pero los valores pcPnPDeviceIDs se han escrito en pPnPDeviceIDs. |
Comentarios
La lista de dispositivos se genera cuando se crea una instancia del administrador de dispositivos; no se actualiza a medida que los dispositivos se conectan y desconectan. Para actualizar la lista de dispositivos conectados, llame a RefreshDeviceList.
La API asigna la memoria de cada cadena a la que apunta la matriz pPnPDeviceIDs . Una vez que la aplicación ya no necesite estas cadenas, debe recorrer en iteración esta matriz y liberar la memoria asociada llamando a la función CoTaskMemFree .
Ejemplos
Para obtener un ejemplo de cómo usar este método para enumerar dispositivos, vea Enumerar dispositivos. Para obtener un ejemplo de cómo usar este método para enumerar servicios, vea Enumeración de servicios.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Windows |
Encabezado | portabledeviceapi.h |
Library | PortableDeviceGUIDs.lib |