Создание дескриптора связывания

Клиентской программе необходимо создать дескриптор связывания, который указывает run-time RPC с каким сервером следует связываться и каким образом это следует делать.

Следующий фрагмент кода демонстрирует обычной подход к созданию десриптора связывания:

RPC_STATUS status;

unsigned short *StringBinding;

RPC_BINDING_HANDLE BindingHandle;

status = RpcStringBindingCompose(NULL, // UUID объекта

L"ncacn_ip_tcp", // Последовательность протокола

L"MyServer.MyCompany.com", // Имя DNS или NetBIOS для сервера

NULL,

NULL,

&StringBinding);

// Проверку на ошибки исключили, поэтому если ошибок нет то продолжаем

status = RpcBindingFromStringBinding(StringBinding, &BindingHandle);

//освободим память вне зависимости от успешности выполнения RpcBindingFromStringBinding

RpcStringFree(&StringBinding);

Вызов удаленной процедуры

После того как у клиентского приложения, использующего явные дискрипторы связывания, есть дескриптор связывания, можно вызывать удаленные процедуры.

Microsoft RPC также предлагает использование настраиваемых, неявных и автоматических дескрипторов связывания, что позволяет приложения получать различный контроль над процессом исполнения удаленных процедур.

Для того чтобы собственно вызвать удаленную процедуру, произведите обращение к функции клиентской заглушки.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: