OpenEventA-Funktion (synchapi.h)

Öffnet ein vorhandenes benanntes Ereignisobjekt.

Syntax

HANDLE OpenEventA(
  [in] DWORD  dwDesiredAccess,
  [in] BOOL   bInheritHandle,
  [in] LPCSTR lpName
);

Parameter

[in] dwDesiredAccess

Der Zugriff auf das Ereignisobjekt. Die Funktion schlägt fehl, wenn der Sicherheitsdeskriptor des angegebenen Objekts den angeforderten Zugriff für den aufrufenden Prozess nicht zulässt. Eine Liste der Zugriffsrechte finden Sie unter Synchronisierungsobjektsicherheit und Zugriffsrechte.

[in] bInheritHandle

Wenn dieser Wert TRUE ist, erben von diesem Prozess erstellte Prozesse das Handle. Andernfalls erben die Prozesse dieses Handle nicht.

[in] lpName

Der Name des zu öffnenden Ereignisses. Bei Namenvergleichen wird die Groß-/Kleinschreibung beachtet.

Diese Funktion kann Objekte in einem privaten Namespace öffnen. Weitere Informationen finden Sie unter Objektnamespaces.

Terminaldienste: Der Name kann ein Präfix "Global" oder "Local" aufweisen, um ein Objekt explizit im globalen Oder Sitzungsnamespace zu öffnen. Der Rest des Namens kann ein beliebiges Zeichen mit Ausnahme des umgekehrten Schrägstrichs (\) enthalten. Weitere Informationen finden Sie unter Kernelobjektnamespaces.

Hinweis Der schnelle Benutzerwechsel wird mithilfe von Terminaldienstesitzungen implementiert. Der erste Benutzer, der sich anmeldet, verwendet Sitzung 0, der nächste Benutzer zum Anmelden verwendet Sitzung 1 usw. Kernelobjektnamen müssen den für Terminaldienste beschriebenen Richtlinien entsprechen, damit Anwendungen mehrere Benutzer unterstützen können.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Handle für das Ereignisobjekt.

Wenn bei der Funktion ein Fehler auftritt, ist der Rückgabewert NULL. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Die OpenEvent-Funktion ermöglicht es mehreren Prozessen, Handles desselben Ereignisobjekts zu öffnen. Die Funktion ist nur erfolgreich, wenn ein Prozess das Ereignis bereits mithilfe der CreateEvent-Funktion erstellt hat. Der aufrufende Prozess kann das zurückgegebene Handle in jeder Funktion verwenden, die ein Handle für ein Ereignisobjekt erfordert, vorbehaltlich der Einschränkungen des zugriffs, die im dwDesiredAccess-Parameter angegeben sind.

Das Handle kann mit der DuplicateHandle-Funktion dupliziert werden. Verwenden Sie die CloseHandle-Funktion , um das Handle zu schließen. Das System schließt den Handle automatisch, wenn der Prozess beendet wird. Das Ereignisobjekt wird zerstört, wenn das letzte Handle geschlossen wurde.

Hinweis

Der synchapi.h-Header definiert OpenEvent als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile synchapi.h (einschließlich Windows.h unter Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

CloseHandle

CreateEvent

CreateProcess

DuplicateHandle

Ereignisobjekte

Objektnamen

PulseEvent

ResetEvent

SetEvent

Synchronisierungsfunktionen