PMRX_CALLDOWN_CTX 콜백 함수(mrx.h)
TheMRxStart 루틴은 RDBSS에 의해 호출되어 네트워크 미니 리트리버를 시작합니다.
구문
PMRX_CALLDOWN_CTX PmrxCalldownCtx;
NTSTATUS PmrxCalldownCtx(
[in, out] IN OUT PRX_CONTEXT RxContext,
[in, out] IN OUT PRDBSS_DEVICE_OBJECT RxDeviceObject
)
{...}
매개 변수
[in, out] RxContext
RX_CONTEXT 구조체에 대한 포인터입니다. 이 매개 변수에는 네트워크 미니 리다이렉터를 시작하도록 요청한 IRP가 포함되어 있습니다.
[in, out] RxDeviceObject
이 네트워크 미니 리다이렉터의 RDBSS_DEVICE_OBJECT 구조에 대한 포인터입니다.
반환 값
MRxStart는 성공 시 STATUS_SUCCESS 반환하거나 다음 중 하나와 같은 적절한 NTSTATUS 값을 반환합니다.
| 반환 코드 | 설명 |
|---|---|
|
네트워크 미니 리 디렉터가 이미 시작되었습니다. |
|
네트워크 미니 리 디렉터에서 성공적으로 시작할 수 없습니다. |
설명
MRxStart 는 RDBSS 관점에서 네트워크 미니 리트리버의 초기화를 완료합니다. 이는 DriverEntry 루틴에서 수행된 초기화와 다릅니다. RDBSS에 의존하는 모든 초기화는 이 루틴의 일부로 수행해야 하며 RDBSS와 독립적인 초기화는 DriverEntry 루틴에서 수행해야 합니다.
MRxStart를 호출하기 전에 RDBSS는 RxContext 매개 변수가 가리키는 RX_CONTEXT 구조체에서 다음 멤버를 수정합니다.
MajorFunction 멤버는 IRP의 주 함수로 설정됩니다.
네트워크 미니 리다이렉터를 시작하는 데 사용된 FSTCL 요청인 경우 LowIoContext.ParamsFor.FsCtl.FsControlCode 멤버는 IRP에 대한 FSCTL 코드로 설정됩니다.
MRxStart 는 RxStartMinirdr 루틴에서 RDBSS에 의해 호출됩니다. MRxStart를 호출하기 전에 RDBSS는 네트워크 미니 리 디렉터의 RxDeviceObject를 파일 시스템으로 등록합니다. 네트워크 미니 리다이렉터에서 UNC 이름에 대한 지원을 나타내는 경우 RDBSS는 네트워크 미니 리다이렉터를 UNC 공급자로 등록합니다.
MRxStart가 STATUS_SUCCESS 반환하면 루틴이 성공했습니다. 다른 반환 값은 시작 시퀀스에서 오류가 발생했음을 나타냅니다.
MRxStart가 STATUS_SUCCESS 반환하는 경우 RDBSS는 RDBSS의 상태를 RDBSS_STARTED 설정합니다. 이 상태는 RxDeviceObject가 가리키는 RDBSS_DEVICE_OBJECT 구조체의 StartStopContext.State 멤버에 저장됩니다.
네트워크 미니 리다이렉터에서는 일반적으로 네트워크 미니 리트리버가 시작되었는지 여부를 나타내는 내부 변수를 유지 관리합니다. 예를 들어 네트워크 미니 리 디렉터에서 중지, 시작 및 시작 작업 또는 중지 작업이 진행 중인 시기를 추적할 수 있습니다.
요구 사항
| 대상 플랫폼 | 데스크톱 |
| 헤더 | mrx.h(Mrx.h 포함) |
참고 항목
피드백
다음에 대한 사용자 의견 제출 및 보기