Método IWMDMDevice2::GetCanonicalName (mswmdm.h)
O método GetCanonicalName recupera o nome canônico do dispositivo.
Sintaxe
HRESULT GetCanonicalName(
[out] LPWSTR pwszPnPName,
[in] UINT nMaxChars
);
Parâmetros
[out] pwszPnPName
Buffer de caractere largo para os nomes canônicos. Esse buffer deve ser alocado e liberado pelo chamador.
[in] nMaxChars
Inteiro que especifica o número máximo de caracteres que podem ser colocados em pwszPnPName, incluindo o caractere de encerramento.
Retornar valor
O método retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.
Código de retorno | Descrição |
---|---|
|
O parâmetro pwszPnPName é um ponteiro NULL ou inválido. |
|
O dispositivo não dá suporte a um nome canônico. |
|
O buffer especificado é muito pequeno para o nome canônico. |
|
Ocorreu um erro não especificado. |
Comentários
O aplicativo pode usar o nome canônico recuperado para chamar IWMDeviceManager2::GetDeviceFromCanonicalName para localizar esse dispositivo novamente.
O nome canônico retornado está no formato <PnP Device Path>$<index>, em que index é um índice baseado em zero nos objetos de dispositivo retornados pelo provedor de serviços para o caminho do dispositivo PnP especificado.
O formato de nome canônico está sujeito a alterações em versões futuras do Windows Media Gerenciador de Dispositivos.
Exemplos
O código C++ a seguir recupera um nome canônico do dispositivo.
// Obtain an IWMDMDevice2 interface and call
// some methods.
const UINT MAX_CHARS = 100;
CComQIPtr<IWMDMDevice2> pIWMDMDevice2(pIWMDMDevice);
if (pIWMDMDevice2 != NULL)
{
// Get the canonical name.
WCHAR canonicalName[MAX_CHARS];
hr = pIWMDMDevice2->GetCanonicalName(canonicalName, MAX_CHARS);
if (hr == S_OK)
{
// TODO: Retrieve the canonical name.
}
// Find out the driver.
myGetDriverName(pIWMDMDevice2);
}
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Windows |
Cabeçalho | mswmdm.h |
Biblioteca | Mssachlp.lib |