次の方法で共有


RxFinishFcbInitialization 関数 (fcb.h)

RxFinishFcbInitialization は、ネットワーク ミニ リダイレクターによる作成操作が正常に完了した後に FCB の初期化を完了するために使用されます。

構文

void RxFinishFcbInitialization(
  IN OUT PMRX_FCB     Fcb,
  IN RX_FILE_TYPE     FileType,
  IN PFCB_INIT_PACKET InitPacket
);

パラメーター

Fcb

初期化中のMRX_FCB構造体へのポインター。

FileType

FCB が参照するエンティティのストレージの種類を示す値。 このパラメーターに使用できるオプションは次のとおりです。

意味
RDBSS_NTC_MAILSLOT メール スロット。
RDBSS_NTC_SPOOLFILE プリンター・スプール・ファイル。
RDBSS_NTC_STORAGE_TYPE_DIRECTORY ディレクトリ。
RDBSS_NTC_STORAGE_TYPE_UNKNOWN ストレージの種類が不明です。
RDBSS_NTC_STORAGE_TYPE_FILE ファイル。

InitPacket

初期化する FCB のストレージの種類に応じて、初期化に必要な追加データへのポインター。 追加のデータが指定されていない場合、このパラメーターは NULL ポインターである可能性があります。

戻り値

なし

解説

IRP_MJ_CREATEの結果として呼び出されると、 最初に RxCreateNetFCB が呼び出され、FCB が作成されます。 作成するNET_ROOTの Type メンバーがNET_ROOT_MAILSLOTでない場合は、 RxFinishFcbInitialization が呼び出され、FCB 構造体の初期化が完了します。

MrxFcb が指すMRX_FCB構造体の FcbState メンバーにFCB_STATE_TIME_AND_SIZE_ALREADY_SETがない場合、InitPacketNULL 以外の場合、InitPacket パラメーターから FCB の次のメンバーが更新されます。AttributesNumberOfLinksCreationTimeLastAccessTimeLastWriteTimeLastChangeTimeActualAllocationLengthHeader.AllocationSizeHeader.FileSizeHeader.ValidDataLength。 その後、 FCB 構造体の FcbState メンバーで、FCB_STATE_TIME_AND_SIZE_ALREADY_SET オプションが に設定されます。

ストレージの種類がRDBSS_NTC_MAILSLOTで、FCB の FcbState メンバーに FCB_STATE_TIME_AND_SIZE_ALREADY_SET オプションが設定されている場合、メール スロットの FCB 構造体の次のメンバーが 0 に初期化されます: AttributesNumberOfLinksCreationTime.QuadPartLastAccessTime.QuadPartLastWriteTime.QuadPartLastChangeTimeQuadPartActualAllocationLengthHeader.AllocationSize.QuadPartHeader.FileSize.QuadPartHeader.ValidDataLength.QuadPart

要件

要件
対象プラットフォーム デスクトップ
Header fcb.h (Mrxfcb.h、Nodetype.h、Fcb.h を含む)
IRQL <= APC_LEVEL

こちらもご覧ください

RxCreateNetFCB

RxCreateNetFobx

RxCreateNetRoot

RxCreateSrvCall

RxCreateSrvOpen

RxCreateVNetRoot

RxDereference

RxFinalizeConnection

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeNetRoot

RxFinalizeSrvCall

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxForceFinalizeAllVNetRoots

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb