Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Named pipes [D7, WinXP]


Marco ©   (2003-12-26 22:33:00) 

Уважаемые Мастера!
Помогите разрешить проблему. Необходимо реализовать раюоту 2 приложений (клиент-сервер) через именованный канал.
Pipe создается с такими параметрами:

hPipeHandle:= CreateNamedPipe(
PChar(sPipeName), // pointer to pipe name
PIPE_ACCESS_DUPLEX or FILE_FLAG_OVERLAPPED,// pipe open mode
PIPE_TYPE_BYTE or PIPE_NOWAIT,// pipe-specific modes
PIPE_UNLIMITED_INSTANCES, // maximum number of instances
1024, // output buffer size, in bytes
1024, // input buffer size, in bytes
NMPWAIT_USE_DEFAULT_WAIT, // time-out time, in milliseconds
@rSecurityAttributes // pointer to security attributes structure
);

Клиент подключается со следующими параметрами:

hPipeHandle:= CreateFile(
PChar(sPipeName), // pipe name
GENERIC_READ or GENERIC_WRITE, // read and write access
0, // no sharing
nil, // no security attributes
OPEN_EXISTING, // opens existing pipe
0, // default attributes
0 // no template file
);

После запуска

TransactNamedPipe(
hPipeHandle,
pBufIN,
SizeOf(pBufIN^),
pBufOUT,
SizeOf(pBufOUT^),
nBytesRead,
@rOverLapped
);
выдается сообщение об ошибке 6 - ERROR_INVALID_HANDLE.
Видимо, дело в параметрах создания pipe...
Может, кто-нибудь занимался этим больше чем я и может помочь?


MBo   (2003-12-27 07:37:00) [1]

В MSDN есть примеры


Наверх

Титульная страница Поиск, карта сайта Написать письмо