PKEY_AudioEndpoint_GUID
La proprietà PKEY_AudioEndpoint_GUID fornisce l'identificatore del dispositivo DirectSound corrispondente al dispositivo endpoint audio. Il valore della proprietà è un GUID che il client può fornire come identificatore del dispositivo alla funzione DirectSoundCreate o DirectSoundCaptureCreate nell'API DirectSound . Questo valore identifica in modo univoco il dispositivo endpoint audio in tutti i dispositivi endpoint audio nel sistema. Per altre informazioni su DirectSound, vedere la documentazione di DirectX SDK.
Il membro vt della struttura PROPVARIANT è impostato su VT_LPWSTR.
Il membro pwszVal della struttura PROPVARIANT punta a una stringa di caratteri null con terminazione null che contiene un GUID che identifica il dispositivo endpoint audio in DirectSound.
Come illustrato in precedenza, l'API MMDevice supporta i ruoli del dispositivo. Anche se DirectSound non supporta direttamente i ruoli del dispositivo, un client DirectSound può usare la proprietà PKEY_AudioEndpoint_GUID per selezionare un rendering DirectSound o acquisire un dispositivo in base al ruolo del dispositivo.
Ad esempio, un'applicazione DirectSound esegue i passaggi seguenti per creare un dispositivo DirectSound che corrisponde al dispositivo endpoint di rendering a cui l'utente ha assegnato il ruolo eMultimedia:
- Chiamare il metodo IMMDeviceEnumerator::GetDefaultAudioEndpoint per ottenere l'interfaccia IMMDevice del dispositivo endpoint di rendering con il ruolo eMultimedia.
- Chiamare il metodo IMMDevice::OpenPropertyStore per ottenere l'interfaccia IPropertyStore del dispositivo eMultimedia. Per altre informazioni su IPropertyStore, vedere la documentazione di Windows SDK.
- Chiamare il metodo IPropertyStore::GetValue per ottenere il valore della proprietà PKEY_AudioEndpoint_GUID.
- Convertire il valore della proprietà da un GUID in formato stringa a una struttura GUID a 16 byte.
- Chiamare la funzione DirectSoundCreate con il GUID per creare il dispositivo con il ruolo eMultimedia.
Nota
PKEY_AudioEndpoint_GUID è una proprietà di sola lettura indipendentemente dalla modalità di accesso all'archiviazione richiesta dall'applicazione in IMMDevice::OpenPropertyStore. Se un'applicazione tenta di impostare un valore usando IPropertyStore::SetValue, questa chiamata ha esito negativo con il codice di errore E_ACCESSDENIED.
Si noti che il GUID a 16 byte generato nel passaggio 4 corrisponde al GUID del dispositivo che identifica il dispositivo durante l'enumerazione del dispositivo DirectSound. La funzione DirectSoundEnumerate enumera i dispositivi endpoint di rendering e la funzione DirectSoundCaptureEnumerate enumera i dispositivi endpoint di acquisizione. In entrambi i casi, il GUID del dispositivo è il primo parametro passato alla funzione di callback di enumerazione. Per altre informazioni sull'enumerazione DirectSound, vedere la documentazione di DirectX SDK.
Per un esempio di codice che usa la proprietà PKEY_AudioEndpoint_GUID, vedere Ruoli dispositivo per applicazioni DirectSound.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista [solo app desktop] |
Server minimo supportato |
Windows Server 2008 [solo app desktop] |
Intestazione |
|
Vedi anche