Распределенные вычисления: технология Microsoft RPC. Часть1. Фертиков В.В. - 13 стр.

UptoLike

Составители: 

13
водятся в квадратных скобках и описывают способ передачи данных по сети. В
данном примере тело интерфейса содержит функциональный прототип
HelloProc. Единственный параметр pszString, обозначен как параметр in,
что означает необходимость его передачи от клиента к серверу . Параметры мо-
гут также быть обозначены как out, если они передаются от сервера клиенту ,
или in,out , если передаются в обоих направлениях. Эти атрибуты инфор-
мация для библиотек времени выполнения , организующих передачу данных
между клиентом и сервером . Атрибут string указывает, что параметр сим -
вольный массив.
В результате обработки IDL файла компилятором MIDL будут сгенериро-
ваны файлы на языке C для клиентского и серверного стабов и файл заголовка.
Файл заголовка, произведенный из файла определения интерфейса HELLO.IDL,
по умолчанию именуется HELLO.H и содержит включение (#include) заголо-
вочного файла RPC.H , а также функциональные прототипы из IDL файла.
Файл заголовка RPC.H определяет данные и функции, используемые сгенери-
рованным файлом заголовка:
/* файл: hello.h (фрагмент) */
#include <rpc.h>
void HelloProc(unsigned char * pszString);
Вместо того чтобы дублировать эти функциональные прототипы , исход -
ный текст клиента должен включить файл заголовка, который сгенерирован из
IDL файла:
/* файл: helloc.c (распределенная версия) */
#include <stdio.h>
#include "hello.h" // заголовок, сгенерированный
// компилятором MIDL
void main(void)
{ char * pszString = "Hello, world";
...
HelloProc(pszString);
...
}
IDL файл определяет «договор» между клиентом и сервером твердое со-
глашение относительно последовательности, типов и размеров данных, кото -
рые должны быть переданы через сеть.
Файл конфигурации приложения
Стандарт распределенной вычислительной среды (DCE) требует также оп-
ределить файл конфигурации приложения или ACF (application configuration
                                    13
водятся в квадратных скобках и описывают способ передачи данных по сети. В
данном примере тело интерфейса содержит функциональный прототип
HelloProc. Единственный параметр pszString , обозначен как параметр in,
что означает необходимость его передачи от клиента к серверу. Параметры мо-
гут также быть обозначены как out, если они передаются от сервера клиенту,
или in,out , если передаются в обоих направлениях. Эти атрибуты – инфор-
мация для библиотек времени выполнения, организующих передачу данных
между клиентом и сервером. Атрибут string указывает, что параметр – сим-
вольный массив.
     В результате обработки IDL файла компилятором MIDL будут сгенериро-
ваны файлы на языке C для клиентского и серверного стабов и файл заголовка.
Файл заголовка, произведенный из файла определения интерфейса HELLO.IDL,
по умолчанию именуется HELLO.H и содержит включение (#include ) заголо-
вочного файла RPC.H , а также функциональные прототипы из IDL файла.
Файл заголовка RPC.H определяет данные и функции, используемые сгенери-
рованным файлом заголовка:

/* файл: hello.h (фрагмент) */

#include 

void HelloProc(unsigned char * pszString);

    Вместо того чтобы дублировать эти функциональные прототипы, исход-
ный текст клиента должен включить файл заголовка, который сгенерирован из
IDL файла:

/* файл: helloc.c (распределенная версия) */

#include 
#include "hello.h" // заголовок, сгенерированный
                   // компилятором MIDL
void main(void)
{    char * pszString = "Hello, world";
    ...
     HelloProc(pszString);
    ...
}

    IDL файл определяет «договор» между клиентом и сервером – твердое со-
глашение относительно последовательности, типов и размеров данных, кото-
рые должны быть переданы через сеть.

    Файл конфигурации приложения
    Стандарт распределенной вычислительной среды (DCE) требует также оп-
ределить файл конфигурации приложения или ACF (application configuration