Share via


Método IMMDeviceEnumerator::GetDevice (mmdeviceapi.h)

O método GetDevice recupera um dispositivo de ponto de extremidade de áudio identificado por uma cadeia de caracteres de ID do ponto de extremidade.

Sintaxe

HRESULT GetDevice(
  [in]  LPCWSTR   pwstrId,
  [out] IMMDevice **ppDevice
);

Parâmetros

[in] pwstrId

Ponteiro para uma cadeia de caracteres que contém a ID do ponto de extremidade. O chamador normalmente obtém essa cadeia de caracteres do método IMMDevice::GetId ou de um dos métodos na interface IMMNotificationClient .

[out] ppDevice

Ponteiro para uma variável de ponteiro na qual o método grava o endereço da interface IMMDevice para o dispositivo especificado. Por meio desse método, o chamador obtém uma referência contada para a interface . O chamador é responsável por liberar a interface, quando ela não é mais necessária, chamando o método Release da interface. Se a chamada GetDevice falhar, *ppDevice será NULL.

Retornar valor

Se o método for bem-sucedido, retornará S_OK. Se falhar, os códigos de retorno possíveis incluem, mas não se limitam a, os valores mostrados na tabela a seguir.

Código de retorno Descrição
E_POINTER
O parâmetro pwstrId ou ppDevice é NULL.
E_NOTFOUND
A ID do dispositivo não identifica um dispositivo de áudio que está neste sistema.
E_OUTOFMEMORY
Sem memória.

Comentários

Se dois programas estiverem em execução em dois processos diferentes e ambos precisarem acessar o mesmo dispositivo de ponto de extremidade de áudio, um programa não poderá simplesmente passar a interface IMMDevice do dispositivo para o outro programa. No entanto, os programas podem acessar o mesmo dispositivo seguindo estas etapas:

  1. O primeiro programa chama o método IMMDevice::GetId no primeiro processo para obter a cadeia de caracteres de ID do ponto de extremidade que identifica o dispositivo.
  2. O primeiro programa passa a cadeia de caracteres de ID do ponto de extremidade pelo limite do processo para o segundo programa.
  3. Para obter uma referência à interface IMMDevice do dispositivo no segundo processo, o segundo programa chama GetDevice com a cadeia de caracteres de ID do ponto de extremidade.
Para obter mais informações sobre o método GetDevice , consulte os seguintes tópicos: Para obter exemplos de código que usam o método GetDevice , consulte os seguintes tópicos:

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho mmdeviceapi.h

Confira também

IMMDevice Interface

IMMDevice::GetId

IMMDeviceEnumerator Interface

IMMNotificationClient Interface