PMRX_CALLDOWN_CTX回呼函式 (mrx.h)
RDBSS 會呼叫 MRxStart 例程來啟動網路迷你重新導向器。
語法
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 會在成功或適當的 NTSTATUS 值上傳回STATUS_SUCCESS,例如下列其中一項:
傳回碼 | Description |
---|---|
STATUS_REDIRECTOR_STARTED | 網路迷你重新導向器已啟動。 |
STATUS_UNSUCCESSFUL | 網路迷你重新導向器無法成功啟動。 |
備註
MRxStart 從 RDBSS 的觀點完成網路迷你重新導向器的初始化。 請注意,這與 DriverEntry 例程中完成的初始化不同。 任何相依於 RDBSS 的初始化都應該在此例程中完成,而與 RDBSS 無關的初始化應在 DriverEntry 例程中完成。
呼叫 MRxStart 之前,RDBSS 會修改 RxContext 參數所指向之RX_CONTEXT結構中的下列成員:
MajorFunction 成員會設定為 IRP 的主要函式。
如果這是用來啟動網路迷你重新導向器的 FSTCL 要求, LowIoContext.ParamsFor.FsCTl.FsControlCode 成員會設定為 IRP 的 FSCTL 程式代碼。
MRxStart 是由 RDBSS 從 RxStartMinirdr 例程呼叫。 在呼叫 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) |