Share via


Funzione OpenEventA (synchapi.h)

Apre un oggetto evento denominato esistente.

Sintassi

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

Parametri

[in] dwDesiredAccess

Accesso all'oggetto evento. La funzione ha esito negativo se il descrittore di sicurezza dell'oggetto specificato non consente l'accesso richiesto per il processo chiamante. Per un elenco dei diritti di accesso, vedere Sicurezza oggetti di sincronizzazione e diritti di accesso.

[in] bInheritHandle

Se questo valore è TRUE, i processi creati da questo processo erediteranno l'handle. In caso contrario, i processi non ereditano questo handle.

[in] lpName

Nome dell'evento da aprire. I confronti dei nomi sono distinzione tra maiuscole e minuscole.

Questa funzione può aprire oggetti in uno spazio dei nomi privato. Per altre informazioni, vedere Spazi dei nomi degli oggetti.

Servizi terminal: Il nome può avere un prefisso "Global" o "Local" per aprire in modo esplicito un oggetto nello spazio dei nomi globale o sessione. Il resto del nome può contenere qualsiasi carattere, ad eccezione del carattere barra rovesciata (\). Per altre informazioni, vedere Spazi dei nomi degli oggetti kernel.

Nota Il passaggio rapido degli utenti viene implementato usando le sessioni di Servizi terminal. Il primo utente a eseguire l'accesso usa la sessione 0, l'utente successivo per accedere usa la sessione 1 e così via. I nomi degli oggetti kernel devono seguire le linee guida descritte per Servizi terminal in modo che le applicazioni possano supportare più utenti.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è un handle per l'oggetto evento.

Se la funzione ha esito negativo, il valore restituito è NULL. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

La funzione OpenEvent consente a più processi di aprire handle dello stesso oggetto evento. La funzione ha esito positivo solo se un processo ha già creato l'evento usando la funzione CreateEvent . Il processo chiamante può usare l'handle restituito in qualsiasi funzione che richiede un handle a un oggetto evento, soggetto alle limitazioni dell'accesso specificato nel parametro dwDesiredAccess .

L'handle può essere duplicato usando la funzione DuplicateHandle . Usare la funzione CloseHandle per chiudere l'handle. Il sistema chiude automaticamente l'handle al termine del processo. L'oggetto evento viene eliminato quando l'ultimo handle è stato chiuso.

Nota

L'intestazione synchapi.h definisce OpenEvent come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [app desktop | App UWP]
Server minimo supportato Windows Server 2003 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione synchapi.h (includere Windows.h in Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

Closehandle

CreateEvent

CreateProcess

DuplicateHandle

Oggetti evento

Nomi di oggetti

PulseEvent

ResetEvent

SetEvent

Funzioni di sincronizzazione