다음을 통해 공유


RxCreateRxContext 함수(rxcontx.h)

RxCreateRxContext 는 새 RX_CONTEXT 구조를 할당하고 데이터 구조를 초기화합니다.

구문

PRX_CONTEXT RxCreateRxContext(
  [in, optional] IN PIRP                 Irp,
  [in]           IN PRDBSS_DEVICE_OBJECT RxDeviceObject,
  [in]           IN ULONG                InitialContextFlags
);

매개 변수

[in, optional] Irp

이 RX_CONTEXT 구조체로 캡슐화할 IRP에 대한 포인터입니다.

[in] RxDeviceObject

이 RX_CONTEXT 및 IRP가 적용되는 디바이스 개체에 대한 포인터입니다.

[in] InitialContextFlags

RX_CONTEXT 구조에 저장할 RX_CONTEXT 데이터 구조의 Flags 멤버에 대한 초기 값 집합입니다. 이러한 초기 값은 다음 열거형의 조합일 수 있습니다.

RX_CONTEXT_FLAG_WAIT

이 값을 설정하면 파일 시스템 프로세스에서 나중에 실행하기 위해 IRP를 게시하지 않아야 하지만 완료될 때까지 기다려야 합니다.

RX_CONTEXT_FLAG_MUST_SUCCEED

이 값을 설정하면 작업이 성공해야 합니다. 이 값은 현재 RDBSS에서 사용되지 않지만 네트워크 미니 리다이렉터 드라이버에서 사용할 수 있습니다.

RX_CONTEXT_FLAG_MUST_SUCCEED_NONBLOCKING

이 값을 설정하면 비블로킹 작업에 대해 작업이 성공해야 합니다. 이 값은 현재 RDBSS에서 사용되지 않지만 네트워크 미니 리다이렉터 드라이버에서 사용할 수 있습니다.

반환 값

RxCreateRxContext 는 성공 시 할당된 RX_CONTEXT 데이터 구조에 대한 포인터 또는 실패 시 NULL 포인터를 반환합니다.

설명

RxCreateRxContextRxInitializeContext 를 호출하여 반환하기 전에 새로 만든 RX_CONTEXT 구조를 초기화합니다.

RxCreateRxContext 는 새 RX_CONTEXT 데이터 구조를 만들 때 페이징되지 않은 풀 메모리를 할당하고 RX_CONTEXT Flags 멤버에 다음 값을 설정합니다.

이 값을 설정하면 페이징되지 않은 풀 메모리에서 RX_CONTEXT 구조가 할당되었습니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 rxcontx.h(Rxprocs.h rxcontx.h 포함)
IRQL <= APC_LEVEL

추가 정보

RX_CONTEXT

RxCompleteRequest

RxCompleteRequest_Real

RxDereference

RxDereferenceAndDeleteRxContext_Real

RxInitializeContext

RxPrepareContextForReuse

RxResumeBlockedOperations_Serially

__RxSynchronizeBlockingOperations

__RxSynchronizeBlockingOperationsMaybeDroppingFcbLock