Функция RxCreateSrvOpen (fcb.h)
RxCreateSrvOpen выделяет, инициализирует и вставляет новую структуру SRV_OPEN в структуры данных в памяти, используемые RDBSS. Если необходимо выделить новую структуру, в ней есть место для структуры FOBX.
Синтаксис
PSRV_OPEN RxCreateSrvOpen(
[in] IN PV_NET_ROOT VNetRoot,
[in, out] IN OUT PFCB Fcb
);
Параметры
[in] VNetRoot
Указатель на структуру V_NET_ROOT.
[in, out] Fcb
Указатель на связанную структуру FCB.
Возвращаемое значение
RxCreateSrvOpen возвращает указатель на только что созданную структуру данных SRV_OPEN при успешном выполнении или указатель NULL на сбой.
Комментарии
Подпрограмма RxCreateSrvOpen обычно не вызывается драйверами мини-перенаправления сети напрямую. RDBSS вызывает эту подпрограмму внутри организации, когда пакет запроса ввода-вывода получен для IRP_MJ_CREATE и необходимо создать SRV_OPEN. Эта IRP обычно получается RDBSS в ответ на запрос приложения в пользовательском режиме, запрашивающего операцию создания файла в сетевой папке. Такой IRP также может выдать другой драйвер ядра.
Перед вызовом RxCreateSrvOpen блокировка связанной структуры FCB должна быть получена в монопольном режиме.
RxCreateSrvOpen попытается использовать SRV_CALL, выделенные как часть связанной структуры FCB, если она доступна. Если SRV_CALL, выделенный с помощью FCB, недоступен, RxCreateSrvOpen выделит новую структуру SRV_CALL.
Если связанный FCB является файлом подкачки, RxCreateSrvOpen выделяет память нестраничного пула при создании новой SRV_OPEN структуры данных. Если связанный FCB не является файлом подкачки, RxCreateSrvOpen выделяет память пула страниц при создании новой структуры данных SRV_OPEN.
В настоящее время Windows не позволяет использовать файл подкачки на удаленном компьютере.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | fcb.h (включая Mrxfcb.h, Fcb.h) |
IRQL | <= APC_LEVEL |