OB_PRE_OPERATION_INFORMATION 구조체(wdm.h)

OB_PRE_OPERATION_INFORMATION 구조는 ObjectPreCallback 루틴에 프로세스 또는 스레드 핸들 작업에 대한 정보를 제공합니다.

구문

typedef struct _OB_PRE_OPERATION_INFORMATION {
  OB_OPERATION                 Operation;
  union {
    ULONG Flags;
    struct {
      ULONG KernelHandle : 1;
      ULONG Reserved : 31;
    };
  };
  PVOID                        Object;
  POBJECT_TYPE                 ObjectType;
  PVOID                        CallContext;
  POB_PRE_OPERATION_PARAMETERS Parameters;
} OB_PRE_OPERATION_INFORMATION, *POB_PRE_OPERATION_INFORMATION;

멤버

Operation

핸들 작업의 형식입니다. 이 멤버는 다음 값 중 하나일 수 있습니다.

OB_OPERATION_HANDLE_CREATE

프로세스 또는 스레드에 대한 새 핸들이 열립니다. 특정 정보를 만들려면 Parameters-CreateHandleInformation>을 사용합니다.

OB_OPERATION_HANDLE_DUPLICATE

프로세스 또는 스레드 핸들이 중복됩니다. 중복 관련 정보에는 Parameters-DuplicateHandleInformation>을 사용합니다.

Flags

예약되어 있습니다. 대신 KernelHandle 멤버를 사용합니다.

KernelHandle

핸들이 커널 핸들인지 여부를 지정하는 비트입니다. 이 멤버가 TRUE이면 핸들은 커널 핸들입니다. 그렇지 않으면 이 핸들은 커널 핸들이 아닙니다.

Reserved

시스템에서 사용하도록 예약되었습니다.

Object

핸들 작업의 대상인 프로세스 또는 스레드 개체에 대한 포인터입니다.

ObjectType

개체의 개체 형식에 대한 포인터입니다. 이 멤버는 프로세스의 경우 PsProcessType 이거나 스레드의 경우 PsThreadType 입니다.

CallContext

작업에 대한 드라이버별 컨텍스트 정보에 대한 포인터입니다. 기본적으로 필터 관리자는 이 멤버를 NULL로 설정하지만 ObjectPreCallback 루틴은 드라이버별 방식으로 CallContext 멤버를 다시 설정할 수 있습니다. 필터 관리자는 일치하는 ObjectPostCallback 루틴에 이 값을 전달합니다.

Parameters

작업별 정보를 포함하는 OB_PRE_OPERATION_PARAMETERS 공용 구조체에 대한 포인터입니다. Operation 멤버는 공용 구조체의 어떤 멤버가 유효한지 결정합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Server 2008 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
헤더 wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함)

추가 정보

OB_PRE_OPERATION_PARAMETERS

ObjectPostCallback

ObjectPreCallback