Leggere in inglese

Condividi tramite


Stringhe ID di endpoint

In Windows Vista, il sistema genera stringhe ID di endpoint per identificare i dispositivi endpoint audio nel sistema. Una stringa ID endpoint è una stringa di caratteri a larghezza fissa con terminazione null. La stringa ID endpoint per un particolare dispositivo endpoint audio identifica in modo univoco il dispositivo tra tutti i dispositivi endpoint audio nel sistema.

Se un sistema contiene due o più dispositivi adattatori audio identici, i dispositivi endpoint audio corrispondenti avranno nomi descrittivi identici, ma ogni dispositivo endpoint avrà una stringa ID endpoint univoca. Per ulteriori informazioni su come ottenere il nome amichevole di un dispositivo endpoint, vedere Proprietà dispositivo.

Dopo aver ottenuto un'istanza dell'interfaccia IMMDeviceper un dispositivo di endpoint audio, il client può utilizzare il metodo IMMDevice::GetId per ottenere la stringa ID dell'endpoint del dispositivo. Un client può usare la stringa id endpoint per creare un'istanza del dispositivo endpoint audio in un secondo momento o in un processo diverso chiamando il metodo IMMDeviceEnumerator::GetDevice.

Un client può disporre di ricevere una notifica quando cambia lo stato di qualsiasi dispositivo endpoint audio. Per ricevere notifiche, il client implementa un'interfaccia IMMNotificationClient e registra tale interfaccia con l'API MMDevice. Quando lo stato di un dispositivo endpoint cambia, l'API MMDevice chiama il metodo appropriato nell'interfaccia EDataFlow del client. Uno dei parametri di input per il metodo è la stringa ID endpoint che identifica il dispositivo endpoint il cui stato è stato modificato. Per altre informazioni su EDataFlow, vedere Eventi del dispositivo.

Le API audio legacy, ad esempio DirectSound e le funzioni multimediali di Windows, hanno interfacce proprie per enumerare e identificare i dispositivi audio. In Windows Vista queste interfacce sono state estese per fornire le stringhe id endpoint che identificano i dispositivi endpoint che sottoscriggono le astrazioni del dispositivo presentate dalle API.

Durante l'enumerazione del dispositivo DirectSound, DirectSound fornisce la stringa ID endpoint per ogni dispositivo enumerato. Per ulteriori informazioni, vedere Eventi audio per applicazioni audio legacy.

Per ottenere la stringa dell'ID dell'endpoint per un dispositivo waveform legacy, usa la funzione waveOutMessage oppure waveInMessage per inviare un messaggio di DRV_QUERYFUNCTIONINSTANCEID al driver del dispositivo waveform. Per un esempio di codice che mostra l'uso di questo messaggio, vedere Ruoli dispositivo per applicazioni multimediali legacy di Windows.

Per altre informazioni sull'uso delle funzionalità delle API audio principali per migliorare le applicazioni che usano API audio legacy, vedere interoperabilità con le API audio legacy.

I client devono considerare il contenuto della stringa id endpoint come opaca. Ovvero, i client non devono tentare di analizzare il contenuto della stringa per ottenere informazioni sul dispositivo. Il motivo è che il formato della stringa non è definito e potrebbe cambiare da un'implementazione del modulo di sistema DELL'API MMDevice alla successiva.

La durata di una stringa ID endpoint è associata all'installazione del dispositivo. La stringa id endpoint di un dispositivo cambia se l'utente aggiorna il driver di dispositivo o se l'utente disinstalla il dispositivo e lo installa nuovamente. Tuttavia, la stringa id endpoint rimane invariata tra i riavvii del sistema e la stringa id endpoint di un dispositivo audio USB rimane invariata se l'utente scollega il dispositivo e lo collega di nuovo.

dispositivi endpoint audio