Поделиться через


Функция RxCreateSrvCall (fcb.h)

RxCreateSrvCall создает структуру SRV_CALL и вставляет имя в таблицу net name, поддерживаемую RDBSS.

Синтаксис

PSRV_CALL RxCreateSrvCall(
  IN PRX_CONTEXT       RxContext,
  IN PUNICODE_STRING   Name,
  IN PUNICODE_STRING   InnerNamePrefix,
  IN PRX_CONNECTION_ID RxConnectionId
);

Параметры

RxContext

[in] Указатель на структуру RX_CONTEXT, содержащую IRP, описывающую операцию создания.

Name

[in] Указатель на имя, вставляемое в таблицу имен.

InnerNamePrefix

Указатель на необязательное внутреннее префиксное имя, вставляемое в таблицу имен с name.

RxConnectionId

[in] Указатель на идентификатор подключения, связанный с именем, который необходимо вставить в таблицу имен префикса. Этот параметр может быть null в этом случае идентификатор подключения не будет связан с именем, вставленным в таблицу имен префикса.

Возвращаемое значение

RxCreateSrvCall возвращает указатель на только что созданную структуру данных SRV_CALL о успешном выполнении или null указателем на сбой.

Замечания

Подпрограмма RxCreateSrvCall обычно не вызывается драйверами мини-перенаправления сети напрямую. RDBSS вызывает эту подпрограмму внутренне, когда пакет запроса ввода-вывода получается для IRP_MJ_CREATE и необходимо создать SRV_CALL. Обычно этот IRP получается RDBSS в ответ на запрос приложения пользовательского режима, запрашивающего операцию создания файла в сетевой папке. Кроме того, для другого драйвера ядра может возникнуть такая ошибка IRP.

Перед вызовом RxCreateSrvCallнеобходимо получить блокировку таблицы имен, связанной с членом объекта устройства параметром RxContext.

RxCreateSrvCall инициализирует параметры вызова сервера, передаваемые через расширенные атрибуты в рамках связанной структуры RX_CONTEXT. В настоящее время это включает инициализацию pPrincipalName члена SRV_CALL который передается драйвером DFS.

Требования

Требование Ценность
целевая платформа Настольный
заголовка fcb.h (include Rxcontx.h, Mrxfcb.h, Prefix.h, Fcb.h)
IRQL <= APC_LEVEL

См. также

RX_CONTEXT

RxCreateNetFcb

RxCreateNetFobx

RxCreateNetRoot

RxCreateSrvOpen

RxCreateVNetRoot

RxDereference

RxFinalizeConnection

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeNetRoot

RxFinalizeSrvCall

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxFinishFcbInitialization

RxForceFinalizeAllVNetRoots

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb

структура SRV_CALL