Функция RxCreateNetFcb (fcb.h)
RxCreateNetFCB выделяет, инициализирует и вставляет новую структуру FCB в структуры данных в памяти для V_NET_ROOT, в которой этот FCB открывается. Выделенная структура содержит пространство для SRV_OPEN и структуры FOBX.
Синтаксис
PFCB RxCreateNetFcb(
[in] IN PRX_CONTEXT RxContext,
[in] IN PIRP Irp,
[in] IN PV_NET_ROOT VNetRoot,
[in] IN PUNICODE_STRING Name
);
Параметры
[in] RxContext
Указатель на структуру RX_CONTEXT, описывающую операцию создания.
[in] Irp
Указатель на IRP, инкапсулированный этой структурой RX_CONTEXT.
[in] VNetRoot
Указатель на структуру V_NET_ROOT, в которой открывается этот FCB.
[in] Name
Имя FCB. V_NET_ROOT может содержать префикс имени, который должен быть добавлен здесь.
Возвращаемое значение
RxCreateNetFCB возвращает указатель на только что выделенную структуру данных FCB при успешном выполнении или указатель NULL при сбое.
Комментарии
Подпрограмма RxCreateNetFCB обычно не вызывается драйверами мини-перенаправления сети напрямую. RDBSS вызывает эту подпрограмму внутренне, когда пакет запроса ввода-вывода получен для IRP_MJ_CREATE и необходимо создать структуру FCB. Эта IRP обычно получается RDBSS в ответ на запрос приложения в пользовательском режиме, запрашивающего операцию создания файла в сетевой папке. Такой IRP также может выдать другой драйвер ядра.
Если создаваемый FCB является файлом подкачки, RxCreateNetFCB выделяет память нестраничного пула при создании новой структуры данных FCB и устанавливает следующий флаг в элементе FcbState FCB:
Если создаваемый FCB не является файлом подкачки, RxCreateNetFCB выделяет память пула страниц при создании новой структуры данных FCB.
В настоящее время Windows не позволяет использовать файл подкачки на удаленном компьютере.
Если для элемента Create.Flags в RX_CONTEXT включен флаг RX_CONTEXT_CREATE_FLAG_ADDEDBACKSLASH, то для элемента FcbState fcbstate будет установлен флаг FCB_STATE_ADDEDBACKSLASH.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | fcb.h (включает Rxcontx.h, Mrxfcb.h, Fcb.h) |
IRQL | <= APC_LEVEL |