costanti DEVICE_STATE_XXX

Le costanti DEVICE_STATE_XXX indicano lo stato corrente di un dispositivo endpoint audio.

Costante/valore Descrizione
DEVICE_STATE_ACTIVE
0x00000001
Il dispositivo dell'endpoint audio è attivo. Vale a dire, la scheda audio che si connette al dispositivo endpoint è presente e abilitata. Inoltre, se il dispositivo endpoint si collega a un jack sulla scheda, il dispositivo endpoint viene collegato.
DEVICE_STATE_DISABLED
0x00000002
Il dispositivo dell'endpoint audio è disabilitato. L'utente ha disabilitato il dispositivo nel pannello di controllo multimediale di Windows, Mmsys.cpl. Per altre informazioni, vedere la sezione Osservazioni.
DEVICE_STATE_NOTPRESENT
0x00000004
Il dispositivo endpoint audio non è presente perché la scheda audio che si connette al dispositivo endpoint è stata rimossa dal sistema oppure l'utente ha disabilitato il dispositivo adattatore in Gestione dispositivi.
DEVICE_STATE_UNPLUGGED
0x00000008
Il dispositivo dell'endpoint audio è scollegato. La scheda audio che contiene il jack per il dispositivo endpoint è presente e abilitata, ma il dispositivo endpoint non è collegato al jack. Solo un dispositivo con rilevamento della presenza jack può essere in questo stato. Per altre informazioni sul rilevamento della presenza jack, vedere Dispositivi endpoint audio.
DEVICE_STATEMASK_ALL
0x0000000F
Include dispositivi endpoint audio in tutti gli stati attivi, disabilitati, non presenti e scollegati.

Commenti

IMMDeviceEnumerator::EnumAudioEndpoints, IMMDevice::GetState e IMMNotificationClient::OnDeviceStateChanged usano le costanti DEVICE_STATE_XXX. Questi metodi consentono ai client di ottenere informazioni sui dispositivi endpoint che si trovano in uno degli stati rappresentati dalle costanti DEVICE_STATE_XXX.

Tuttavia, un client può aprire un flusso (ad esempio, ottenendo un'interfaccia IAudioClient per il dispositivo) solo in un dispositivo che si trova nello stato DEVICE_STATE_ACTIVE.

Il pannello di controllo multimediale windows, Mmsys.cpl, visualizza i dispositivi endpoint audio nel sistema. La disabilitazione di un dispositivo in Mmsys.cpl nasconde il dispositivo dai meccanismi di individuazione dei dispositivi nelle API audio di livello superiore, ma non invalida gli oggetti di flusso che un client potrebbe avere creato un'istanza prima che il dispositivo fosse disabilitato. Ad esempio, se un flusso viene riprodotto nel dispositivo quando l'utente lo disabilita in Mmsys.cpl, il flusso continua a riprodurre senza interruzioni.

Al contrario, disabilitando un dispositivo in Gestione dispositivi rimuove effettivamente il dispositivo dal sistema.

Per usare Mmsys.cpl per visualizzare i dispositivi di rendering, aprire una finestra del prompt dei comandi e immettere il comando seguente:

controllo mmsys.cpl,0

Per visualizzare i dispositivi di acquisizione, immettere il comando seguente:

controllo mmsys.cpl,1

In alternativa, è possibile visualizzare i dispositivi di rendering o i dispositivi di acquisizione in Mmsys.cpl facendo clic con il pulsante destro del mouse sull'icona dell'altoparlante nell'area di notifica, che si trova sul lato destro della barra delle applicazioni e selezionando Dispositivi di riproduzione o dispositivi di registrazione.

Mmsys.cpl visualizza sempre i dispositivi endpoint presenti nello stato di DEVICE_STATE_ACTIVE. Inoltre, può essere configurato per visualizzare dispositivi disabilitati e disconnessi.

Per visualizzare i dispositivi endpoint presenti negli stati di DEVICE_STATE_DISABLED e DEVICE_STATE_NOTPRESENT, fare clic con il pulsante destro del mouse nella finestra Mmsys.cpl e selezionare l'opzione Mostra dispositivi disabilitati .

Per visualizzare i dispositivi endpoint presenti nello stato DEVICE_STATE_UNPLUGGED, fare clic con il pulsante destro del mouse nella finestra Mmsys.cpl e selezionare l'opzione Mostra dispositivi disconnessi .

Per visualizzare solo i dispositivi endpoint presenti nello stato DEVICE_STATE_ACTIVE, deselezionare le opzioni Mostra dispositivi disabilitati e Mostra dispositivi disconnessi .

Per abilitare o disabilitare un dispositivo endpoint in Mmsys.cpl, fare clic su Riproduzione o registrazione, a seconda che il dispositivo sia una riproduzione o un dispositivo di registrazione. Selezionare quindi il dispositivo e fare clic su Proprietà. Nella finestra Proprietà accanto all'utilizzo del dispositivo selezionare Usa questo dispositivo (abilita) o Non usare questo dispositivo (disabilita).

Requisiti

Requisito Valore
Client minimo supportato
Windows Vista [solo app desktop]
Server minimo supportato
Windows Server 2008 [solo app desktop]
Intestazione
Mmdeviceapi.h

Vedi anche

Costanti audio principali

IMMDevice::GetState

Interfaccia IMMDeviceEnumerator

IMMDeviceEnumerator::EnumAudioEndpoints

IMMNotificationClient::OnDeviceStateChanged