IAudioClient::SetEventHandle-Methode (audioclient.h)

Die SetEventHandle-Methode legt das Ereignishandle fest, das das System signalisiert, wenn ein Audiopuffer bereit ist, vom Client verarbeitet zu werden.

Syntax

HRESULT SetEventHandle(
  [in] HANDLE eventHandle
);

Parameter

[in] eventHandle

Das Ereignishandle.

Rückgabewert

Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Wenn ein Fehler auftritt, können mögliche Rückgabecodes die in der folgenden Tabelle gezeigten Werte umfassen, sind jedoch nicht darauf beschränkt.

Rückgabecode Beschreibung
E_INVALIDARG
Parameter eventHandle ist NULL oder ein ungültiges Handle.
AUDCLNT_E_EVENTHANDLE_NOT_EXPECTED
Der Audiostream wurde nicht für ereignisgesteuerte Pufferung initialisiert.
AUDCLNT_E_NOT_INITIALIZED
Der Audiostream wurde nicht erfolgreich initialisiert.
AUDCLNT_E_DEVICE_INVALIDATED
Das Audioendpunktgerät wurde getrennt, oder die Audiohardware oder die zugehörigen Hardwareressourcen wurden neu konfiguriert, deaktiviert, entfernt oder anderweitig für die Verwendung nicht verfügbar gemacht.
AUDCLNT_E_SERVICE_NOT_RUNNING
Der Windows-Audiodienst wird nicht ausgeführt.

Hinweise

Diese Methode erfordert eine vorherige Initialisierung der IAudioClient-Schnittstelle . Alle Aufrufe dieser Methode schlagen mit dem Fehler AUDCLNT_E_NOT_INITIALIZED fehl, bis der Client den Audiodatenstrom durch erfolgreiches Aufrufen der IAudioClient::Initialize-Methode initialisiert .

Während der Streaminitialisierung kann der Client optional die ereignisgesteuerte Pufferung aktivieren. Dazu ruft der Client die IAudioClient::Initialize-Methode mit dem AUDCLNT_STREAMFLAGS_EVENTCALLBACK-Flag auf. Nach dem Aktivieren des ereignisgesteuerten Puffers und vor dem Aufrufen der IAudioClient::Start-Methode zum Starten des Datenstroms muss der Client SetEventHandle aufrufen, um das Ereignishandle zu registrieren, das das System jedes Mal signalisiert, wenn ein Puffer bereit ist, vom Client verarbeitet zu werden.

Das Ereignishandle sollte sich im nicht signalierten Zustand befinden, wenn der Client die Start-Methode aufruft.

Wenn der Client das ereignisgesteuerte Puffern eines Datenstroms aktiviert hat, der Client jedoch die Start-Methode für diesen Datenstrom aufruft, ohne zuerst SetEventHandle aufzurufen, schlägt der Startaufruf fehl und gibt einen Fehlercode zurück.

Wenn der Client das ereignisgesteuerte Puffern eines Datenstroms nicht aktiviert, aber versucht, durch Aufrufen von SetEventHandle ein Ereignishandle für den Stream festzulegen, schlägt der Aufruf fehl und gibt einen Fehlercode zurück.

Ein Codebeispiel, das die SetEventHandle-Methode aufruft, finden Sie unter Datenströme im exklusiven Modus.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile audioclient.h

Weitere Informationen

IAudioClient-Schnittstelle

IAudioClient::Initialize

IAudioClient::Start