Compartilhar via


Método IAudioSessionControl::SetIconPath (audiopolicy.h)

O método SetIconPath atribui um ícone de exibição à sessão atual.

Sintaxe

HRESULT SetIconPath(
  [in] LPCWSTR Value,
  [in] LPCGUID EventContext
);

Parâmetros

[in] Value

Ponteiro para uma cadeia de caracteres largos terminada em nulo que especifica o caminho e o nome do arquivo de um arquivo .ico, .dll ou .exe que contém o ícone. Para obter informações sobre caminhos de ícone, consulte a documentação do SDK do Windows.

[in] EventContext

Ponteiro para o GUID de contexto de evento. Se uma chamada para esse método gerar um evento de alteração de ícone, o gerenciador de sessão enviará notificações a todos os clientes que registraram interfaces IAudioSessionEvents com o gerenciador de sessão. O gerenciador de sessão inclui o valor do ponteiro EventContext com cada notificação. Ao receber uma notificação, um cliente pode determinar se ele ou outro cliente é a origem do evento inspecionando o valor EventContext . Esse esquema depende do cliente selecionar um valor para esse parâmetro exclusivo entre todos os clientes na sessão. Se o chamador fornecer um ponteiro NULL para esse parâmetro, o método de notificação do cliente receberá um ponteiro de contexto NULL .

Valor retornado

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
Valor do parâmetro é NULL.
AUDCLNT_E_DEVICE_INVALIDATED
O dispositivo de ponto de extremidade de áudio foi desconectado ou o hardware de áudio ou os recursos de hardware associados foram reconfigurados, desabilitados, removidos ou não estão disponíveis para uso.
AUDCLNT_E_SERVICE_NOT_RUNNING
O serviço de áudio do Windows não está em execução.

Comentários

No Windows Vista, o programa fornecido pelo sistema, Sndvol.exe, usa o ícone de exibição (juntamente com o nome de exibição) para rotular o controle de volume da sessão. Se o cliente não chamar SetIconPath para atribuir um ícone à sessão, o programa Sndvol usará o ícone da janela do aplicativo como o ícone padrão da sessão.

No caso de uma sessão entre processos, a sessão não está associada a um único processo de aplicativo. Portanto, o Sndvol não tem nenhum ícone específico do aplicativo a ser usado por padrão e o cliente deve chamar SetIconPath para evitar a exibição de um ícone sem sentido.

O ícone de exibição não persiste além do tempo de vida do objeto IAudioSessionControl . Assim, depois que todas as referências ao objeto forem lançadas, uma versão posteriormente criada do objeto (com o mesmo aplicativo, o mesmo GUID de sessão e o mesmo dispositivo de ponto de extremidade) terá novamente um ícone padrão até que o cliente chame SetIconPath.

O cliente pode recuperar o ícone de exibição da sessão chamando o método IAudioSessionControl::GetIconPath .

Requisitos

   
Cliente mínimo com suporte Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho audiopolicy.h

Confira também

IAudioSessionControl Interface

IAudioSessionControl::GetIconPath