ObOpenObjectByName 함수

전체 액세스 유효성 검사 및 감사가 있는 개체를 엽니다.

구문

NTSTATUS
ObOpenObjectByName (
    __in POBJECT_ATTRIBUTES ObjectAttributes,
    __in POBJECT_TYPE ObjectType,
    __in KPROCESSOR_MODE AccessMode,
    __inout_opt PACCESS_STATE AccessState,
    __in_opt ACCESS_MASK DesiredAccess,
    __inout_opt PVOID ParseContext,
    __out PHANDLE Handle
    )

매개 변수

ObjectAttributes [in]

개체 특성을 나타내는 OBJECT_ATTRIBUTES 구조체에 대한 포인터입니다.

ObjectType [in]

개체 형식입니다. OBJECT_TYPE 구조체에는 다음과 같은 정의가 있습니다.

typedef struct _OBJECT_TYPE {
    LIST_ENTRY TypeList;
    UNICODE_STRING Name;            
    PVOID DefaultObject;
    UCHAR Index;
    __volatile ULONG TotalNumberOfObjects;
    __volatile ULONG TotalNumberOfHandles;
    ULONG HighWaterNumberOfObjects;
    ULONG HighWaterNumberOfHandles;
    OBJECT_TYPE_INITIALIZER TypeInfo;
    EX_PUSH_LOCK TypeLock;
    ULONG Key;
} OBJECT_TYPE, *POBJECT_TYPE;

AccessMode [in]

액세스의 프로세서 모드입니다. KPROCESSOR_MODE 다음 값으로 정의됩니다.

typedef enum _KPROCESSOR_MODE {
    KernelMode,
    UserMode,
    MaximumMode
} KPROCESSOR_MODE;

AccessState [in, out, optional]

현재 액세스 상태 나타내는 ACCESS_STATE 대한 선택적 포인터로, 이미 부여된 액세스 형식, 액세스 형식을 가져오는 데 사용되는 권한 및 아직 부여되지 않은 액세스 유형을 설명합니다.

DesiredAccess [in, optional]

개체에 대한 원하는 액세스를 나타내는 ACCESS_MASK.

ParseContext [in, out, optional]

컨텍스트 데이터를 구문 분석하기 위한 선택적 포인터입니다.

핸들 [out]

핸들 값을 받는 변수에 대한 포인터를 받습니다.

반환 값

성공에 S_OK.

설명

이 함수는 SDK 헤더에 정의되어 있지 않으며 호출자가 선언해야 합니다. 이 함수는 ntoskrnl.exe에서 내보냅니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10
지원되는 최소 서버 Windows 10
DLL ntoskrnl.exe

참고 항목