Freigeben über


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 Sync Object Security and Access Rights.

[in] bInheritHandle

Wenn dieser Wert TRUEist, erben Prozesse, die von diesem Prozess erstellt werden, das Handle. Andernfalls erben die Prozesse diesen Handle nicht.

[in] lpName

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

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

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

Hinweis Schnelle Benutzerumschaltung mithilfe von Terminaldienstesitzungen implementiert wird. Der erste Benutzer, der sich anmelden soll, verwendet Sitzung 0, der nächste Benutzer, bei dem sich angemeldet werden soll, Sitzung 1 usw. Kernelobjektnamen müssen den Richtlinien für Terminaldienste 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 die Funktion fehlschlägt, ist der Rückgabewert NULL-. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Die OpenEvent--Funktion ermöglicht es mehreren Prozessen, Handles desselben Ereignisobjekts zu öffnen. Die Funktion ist nur erfolgreich, wenn bereits ein Prozess das Ereignis 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, der im dwDesiredAccess Parameter angegeben ist.

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

Anmerkung

Der Header synchapi.h 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 Code, der nicht codierungsneutral ist, 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
mindestens unterstützte Client- Windows XP [Desktop-Apps | UWP-Apps]
mindestens unterstützte Server- Windows Server 2003 [Desktop-Apps | UWP-Apps]
Zielplattform- Fenster
Header- synchapi.h (enthalten Windows.h unter Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Library Kernel32.lib
DLL- Kernel32.dll

Siehe auch

CloseHandle-

CreateEvent-

CreateProcess-

DuplicateHandle-

Ereignisobjekte

Objektnamen

PulseEvent

ResetEvent-

SetEvent-

Synchronisierungsfunktionen