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


Функция RpcObjectSetType (rpcdce.h)

Функция RpcObjectSetType назначает тип объекта .

Синтаксис

RPC_STATUS RpcObjectSetType(
  UUID *ObjUuid,
  UUID *TypeUuid
);

Параметры

ObjUuid

Указатель на объект UUID, который необходимо связать с типом UUID в параметре TypeUuid .

TypeUuid

Указатель на тип UUID параметра ObjUuid .

Укажите значение параметра NULL или nil UUID, чтобы сбросить тип объекта до сопоставления по умолчанию объекта UUID/nil-type UUID.

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

Значение Значение
RPC_S_OK
Вызов выполнен успешно.
RPC_S_INVALID_OBJECT
Недопустимый объект.
RPC_S_ALREADY_REGISTERED
Объект уже зарегистрирован.
RPC_S_OUT_OF_MEMORY
В системе не хватает памяти.
 
Примечание Список допустимых кодов ошибок см. в разделе Возвращаемые значения RPC.
 

Комментарии

Серверное приложение вызывает RpcObjectSetType для назначения типа UUID объекту UUID. По умолчанию библиотека времени выполнения RPC автоматически назначает всем UUID объекта с UUID nil-type. Серверное приложение, содержащее одну реализацию интерфейса (один вектор точки входа диспетчера [EPV]), не требует вызова RpcObjectSetType при условии, что сервер зарегистрировал интерфейс с UUID nil-type (см. в разделе RpcServerRegisterIf).

Серверное приложение, содержащее несколько реализаций интерфейса (несколько EPV диспетчеров, то есть несколько типов UUID), вызывает RpcObjectSetType один раз для каждого сопоставления UUID UUID объекта, отличного от nil, которое поддерживает сервер. Связывание каждого объекта с типом UUID сообщает библиотеке времени выполнения RPC, какой диспетчер EPV (реализация интерфейса) следует использовать, когда сервер получает удаленный вызов процедуры для UUID объекта, отличного от nil.

Библиотека времени выполнения RPC позволяет приложению задавать тип для неограниченного количества объектов. Чтобы удалить связь между объектом UUID и его типом UUID (установленным путем вызова RpcObjectSetType), сервер снова вызывает RpcObjectSetType , указывая значение NULL или nil UUID для параметра TypeUuid . При этом связь объекта UUID/типа UUID сбрасывается на связь по умолчанию объекта UUID/nil-type UUID. Сервер не может назначить тип UUID объекта nil. Библиотека времени выполнения RPC автоматически назначает UUID объекта nil UUID типа nil.

Подробные сведения см. в разделе Регистрация интерфейсов.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header rpcdce.h (включая Rpc.h)
Библиотека Rpcrt4.lib
DLL Rpcrt4.dll

См. также раздел

Регистрация интерфейсов

RpcServerRegisterIf