Функция 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 , если дополнительные данные не предоставлены.
Возвращаемое значение
None
Remarks
При вызове в результате IRP_MJ_CREATE сначала вызывается RxCreateNetFCB для создания FCB. Если элемент Type создаваемого NET_ROOT не является NET_ROOT_MAILSLOT, то для завершения инициализации структуры FCB вызывается RxFinishFcbInitialization .
Если член FcbState структуры MRX_FCB, на который указывает MrxFcb , не имеет FCB_STATE_TIME_AND_SIZE_ALREADY_SET, то следующие члены FCB будут обновлены из параметра InitPacket , если initPacket не имеет значения NULL: Attributes, NumberOfLinks, CreationTime, LastAccessTime, LastWriteTime, LastChangeTime, ActualAllocationLength, Header.AllocationSize, Header.FileSize и Header.ValidDataLength. Затем параметр FCB_STATE_TIME_AND_SIZE_ALREADY_SET устанавливается в элементе FcbState структуры FCB.
Если тип хранилища является RDBSS_NTC_MAILSLOT и член FcbState в FCB имеет параметр FCB_STATE_TIME_AND_SIZE_ALREADY_SET, то следующие члены структуры FCB для почтового слота будут инициализированы равными 0: Attributes, NumberOfLinks, CreationTime.QuadPart, LastAccessTime.QuadPart, LastWriteTime.QuadPart, LastChangeTime. QuadPart, ActualAllocationLength, Header.AllocationSize.QuadPart, Header.FileSize.QuadPart и Header.ValidDataLength.QuadPart
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | fcb.h (включая Mrxfcb.h, Nodetype.h, Fcb.h) |
IRQL | <= APC_LEVEL |