Metodo IAudioSessionControl::SetDisplayName (audiopolicy.h)
Il metodo SetDisplayName assegna un nome visualizzato alla sessione corrente.
Sintassi
HRESULT SetDisplayName(
[in] LPCWSTR Value,
[in] LPCGUID EventContext
);
Parametri
[in] Value
Puntatore a una stringa di caratteri wide con terminazione Null contenente il nome visualizzato per la sessione.
[in] EventContext
Puntatore al GUID del contesto dell'evento. Se una chiamata a questo metodo genera un evento di modifica del nome, il gestore della 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 |
---|---|
|
Il valore del parametro è NULL. |
|
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. |
|
Il servizio audio di Windows non è in esecuzione. |
Commenti
In Windows Vista, il programma fornito dal sistema, Sndvol.exe, usa il nome visualizzato per etichettare il controllo volume per la sessione. Se il client non chiama SetDisplayName per assegnare un nome visualizzato alla sessione, il programma Sndvol usa un nome predefinito generato automaticamente per etichettare la sessione. Il nome predefinito incorpora informazioni quali il titolo della finestra o la risorsa della versione dell'applicazione audio.
Se un client ha più sessioni attive, i nomi visualizzati specificati dal client sono particolarmente utili per distinguere tra i controlli del volume per le varie sessioni.
Nel caso di una sessione tra processi, la sessione non dispone di informazioni di identificazione, ad esempio un nome applicazione o un ID processo, da cui generare un nome visualizzato predefinito. Pertanto, il client deve chiamare SetDisplayName per evitare di visualizzare un nome visualizzato predefinito senza significato.
Il nome visualizzato 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 nome visualizzato predefinito, generato automaticamente fino a quando il client non chiama SetDisplayName.
Il client può recuperare il nome visualizzato per la sessione chiamando il metodo IAudioSessionControl::GetDisplayName .
Requisiti
Requisito | Valore |
---|---|
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