Share via


Metodo IAudioSessionControl::SetIconPath (audiopolicy.h)

Il metodo SetIconPath assegna un'icona di visualizzazione alla sessione corrente.

Sintassi

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

Parametri

[in] Value

Puntatore a una stringa di caratteri wide e con terminazione Null che specifica il percorso e il nome file di un file con estensione ico, .dll o .exe che contiene l'icona. Per informazioni sui percorsi delle icone, vedere la documentazione di Windows SDK.

[in] EventContext

Puntatore al GUID del contesto dell'evento. Se una chiamata a questo metodo genera un evento di modifica dell'icona, il gestore sessione invia notifiche a tutti i client che hanno registrato interfacce IAudioSessionEvents con la gestione sessione. La gestione sessione include il valore del puntatore EventContext con ogni notifica. Dopo aver ricevuto una notifica, un client può determinare se è l'origine dell'evento o un altro client controllando il valore EventContext . Questo schema dipende dal client che seleziona un valore per questo parametro univoco tra tutti i client nella sessione. Se il chiamante fornisce un puntatore NULL per questo parametro, il metodo di notifica del client riceve un puntatore di contesto NULL .

Valore restituito

Se il metodo ha esito positivo, viene restituito S_OK. Se ha esito negativo, i possibili codici restituiti includono, ma non sono limitati, i valori illustrati nella tabella seguente.

Codice restituito Descrizione
E_POINTER
Il valore del parametro è NULL.
AUDCLNT_E_DEVICE_INVALIDATED
Il dispositivo endpoint audio è stato scollegato oppure l'hardware audio o le risorse hardware associate sono state riconfigurate, disabilitate, rimosse o altrimenti non disponibili per l'uso.
AUDCLNT_E_SERVICE_NOT_RUNNING
Il servizio audio di Windows non è in esecuzione.

Commenti

In Windows Vista, il programma fornito dal sistema, Sndvol.exe, usa l'icona di visualizzazione (insieme al nome visualizzato) per etichettare il controllo volume per la sessione. Se il client non chiama SetIconPath per assegnare un'icona alla sessione, il programma Sndvol usa l'icona dalla finestra dell'applicazione come icona predefinita per la sessione.

Nel caso di una sessione tra processi, la sessione non è associata a un singolo processo dell'applicazione. Pertanto, Sndvol non dispone di un'icona specifica dell'applicazione da usare per impostazione predefinita e il client deve chiamare SetIconPath per evitare di visualizzare un'icona senza significato.

L'icona di visualizzazione non persiste oltre la durata dell'oggetto IAudioSessionControl . Pertanto, dopo il rilascio di tutti i riferimenti all'oggetto, una versione creata successivamente dell'oggetto (con la stessa applicazione, lo stesso GUID di sessione e lo stesso dispositivo endpoint) avrà nuovamente un'icona predefinita finché il client non chiama SetIconPath.

Il client può recuperare l'icona di visualizzazione per la sessione chiamando il metodo IAudioSessionControl::GetIconPath .

Requisiti

   
Client minimo supportato Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione audiopolicy.h

Vedi anche

Interfaccia IAudioSessionControl

IAudioSessionControl::GetIconPath