OpenEventA 함수(synchapi.h)

명명된 기존 이벤트 개체를 엽니다.

구문

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

매개 변수

[in] dwDesiredAccess

이벤트 개체에 대한 액세스 권한입니다. 지정된 개체의 보안 설명자가 호출 프로세스에 대해 요청된 액세스를 허용하지 않으면 함수가 실패합니다. 액세스 권한 목록은 동기화 개체 보안 및 액세스 권한을 참조하세요.

[in] bInheritHandle

이 값이 TRUE이면 이 프로세스에서 만든 프로세스가 핸들을 상속합니다. 그렇지 않으면 프로세스에서 이 핸들을 상속하지 않습니다.

[in] lpName

열 이벤트의 이름입니다. 이름 비교는 대/소문자를 구분합니다.

이 함수는 프라이빗 네임스페이스에서 개체를 열 수 있습니다. 자세한 내용은 개체 네임스페이스를 참조하세요.

터미널 서비스: 이름에는 전역 또는 세션 네임스페이스에서 개체를 명시적으로 여는 "전역" 또는 "로컬" 접두사를 사용할 수 있습니다. 이름의 나머지 부분에는 백슬래시 문자(\)를 제외한 모든 문자가 포함될 수 있습니다. 자세한 내용은 커널 개체 네임스페이스를 참조하세요.

참고 빠른 사용자 전환은 터미널 서비스 세션을 사용하여 구현됩니다. 로그온하는 첫 번째 사용자는 세션 0을 사용하고, 로그온할 다음 사용자는 세션 1 등을 사용합니다. 커널 개체 이름은 애플리케이션이 여러 사용자를 지원할 수 있도록 터미널 서비스에 대해 설명된 지침을 따라야 합니다.

반환 값

함수가 성공하면 반환 값은 이벤트 개체에 대한 핸들입니다.

함수가 실패하면 반환 값은 NULL입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

OpenEvent 함수를 사용하면 여러 프로세스가 동일한 이벤트 개체의 핸들을 열 수 있습니다. 함수는 일부 프로세스가 CreateEvent 함수를 사용하여 이벤트를 이미 만든 경우에만 성공합니다. 호출 프로세스는 dwDesiredAccess 매개 변수에 지정된 액세스의 제한 사항에 따라 이벤트 개체에 대한 핸들이 필요한 모든 함수에서 반환된 핸들을 사용할 수 있습니다.

DuplicateHandle 함수를 사용하여 핸들을 복제할 수 있습니다. CloseHandle 함수를 사용하여 핸들을 닫습니다. 시스템은 프로세스가 종료되면 핸들을 자동으로 닫습니다. 이벤트 개체는 마지막 핸들이 닫혔을 때 제거됩니다.

참고

synchapi.h 헤더는 OPENEvent를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 synchapi.h(Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2에 Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

CloseHandle

CreateEvent

CreateProcess

DuplicateHandle

이벤트 개체

개체 이름

PulseEvent

ResetEvent

SetEvent

동기화 함수