Функция RpcServerRegisterIf (rpcdce.h)
Функция RpcServerRegisterIf регистрирует интерфейс с библиотекой времени выполнения RPC.
Синтаксис
RPC_STATUS RpcServerRegisterIf(
RPC_IF_HANDLE IfSpec,
UUID *MgrTypeUuid,
RPC_MGR_EPV *MgrEpv
);
Параметры
IfSpec
Структура, созданная MIDL, указывающая интерфейс для регистрации.
MgrTypeUuid
Указатель на тип UUID, который необходимо связать с параметром MgrEpv . Указание значения параметра NULL (или nil UUID) регистрирует IfSpec с UUID типа nil.
MgrEpv
Вектор точки входа (EPV) подпрограмм диспетчера. Чтобы использовать EPV по умолчанию, созданный MIDL, укажите значение NULL. Дополнительные сведения см. в разделе RPC_MGR_EPV.
Возвращаемое значение
Возвращает RPC_S_OK при успешном выполнении.
Комментарии
Сервер может зарегистрировать неограниченное количество интерфейсов в библиотеке времени выполнения RPC. Регистрация делает интерфейс доступным для клиентов, используя дескриптор привязки к серверу. Чтобы зарегистрировать интерфейс, код серверного приложения вызывает RpcServerRegisterIf. Для каждой реализации интерфейса, который предлагает сервер, он должен зарегистрировать отдельный EPV диспетчера.
При вызове RpcServerRegisterIf сервер предоставляет следующие сведения:
- Спецификация интерфейса
Спецификация интерфейса — это структура данных, созданная компилятором MIDL. Сервер задает интерфейс с помощью параметра IfSpec .
- Тип диспетчера UUID и EPV диспетчера
Тип диспетчера UUID и EPV диспетчера определяют, какая подпрограмма диспетчера выполняется, когда сервер получает запрос на удаленный вызов процедуры от клиента.
Сервер задает тип диспетчера UUID и EPV с помощью параметров MgrTypeUuid и MgrEpv . Обратите внимание, что при указании UUID типа диспетчера, отличного от nil, сервер должен также вызвать функцию RpcObjectSetType для регистрации объектов этого типа, отличного от nil.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | rpcdce.h (включая Rpc.h) |
Библиотека | Rpcrt4.lib |
DLL | Rpcrt4.dll |