Организация вычислительных процессов в ЭВМ. Лясин Д.Н - 18 стр.

UptoLike

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

18
//когда канал больше не нужензакрываем его
CloseHandle(hNamedPipe);
// Фрагмент приложения-клиента
HANDLE hNamedPipe;
unsigned long count;
char buf[512];
char buf1[512]="Test string";
//Открываем объектименованный канал
hNamedPipe =CreateFile("\\\\.\\pipe\\mypipe", GE-
NERIC_READ|GENERIC_WRITE, 0, NULL ,OPEN_EXISTING , 0 , NULL);
//Если открыть канал не удалосьсообщение об ошибке
if (hNamedPipe==INVALID_HANDLE_VALUE)
MessageBox(NULL, "Невозможно открыть канал
",”Ошибка",MB_OK);
//записываем данные из строки buf1 в канал
WriteFile(hNamedPipe,buf1,512,&count,NULL);
//и считываем ответ сервера
ReadFile(hNamedPipe,buf,512,&count,NULL);
// закрываем канал, когда он больше не нужен
CloseHandle(hNamedPipe);
ОбъектПочтовый слот” (Mailslot) очень похож по своему назначению и
свойствам на именованные каналы. Он позволяет передавать информацию от
одного процесса к другому, однако, в отличие от именованных каналов, почто-
вый слот всегда передает данные в одном направлении, дуплексный обмен в нем
…
//когда канал больше не нужен – закрываем его
CloseHandle(hNamedPipe);


// Фрагмент приложения-клиента
HANDLE hNamedPipe;
unsigned long count;
char buf[512];
char buf1[512]="Test string";
//Открываем объект – именованный канал
hNamedPipe =CreateFile("\\\\.\\pipe\\mypipe", GE-
NERIC_READ|GENERIC_WRITE, 0, NULL ,OPEN_EXISTING , 0 , NULL);
//Если открыть канал не удалось – сообщение об ошибке
if (hNamedPipe==INVALID_HANDLE_VALUE)
       MessageBox(NULL, "Невозможно открыть канал
",”Ошибка",MB_OK);
//записываем данные из строки buf1 в канал…
WriteFile(hNamedPipe,buf1,512,&count,NULL);
//и считываем ответ сервера
ReadFile(hNamedPipe,buf,512,&count,NULL);
…
// закрываем канал, когда он больше не нужен
CloseHandle(hNamedPipe);


      Объект “Почтовый слот” (Mailslot) очень похож по своему назначению и
свойствам на именованные каналы. Он позволяет передавать информацию от
одного процесса к другому, однако, в отличие от именованных каналов, почто-
вый слот всегда передает данные в одном направлении, дуплексный обмен в нем




                                      18