Использование IPC

  Вход на форум   логин       пароль   Забыли пароль? Регистрация
On-line:  

Раздел: 
Программирование на CAVO / / Использование IPC

Страницы: 1  новая тема

Автор Сообщение

Группа: Участники
Сообщений: 26
Добавлено: 02-01-2014 13:15
Кто-нибудь организовывал межпрограмное взаимодействие и в частности с помощью пайпов? Пытаюсь из своей проги запустить консольное приложение и через pipe управлять им. Приложение пытается запуститься и сразу удаляется. Вот небольшой кусок проги:

method RunSt class ShellW
local hRead, hWrite, hReadConsol, hWriteConsol as ptr
local struPI is _WINPROCESS_INFORMATION
local struSI is _WINSTARTUPINFO
local uErr as any
local nBR as dword


CreatePipe(@hReadConsol, @hWrite, NULL, 100)
CreatePipe(@hRead, @hWriteConsol, NULL, 100)

GetStartupInfo(@struSi)
struSi.dwFlags := STARTF_USESTDHANDLES
struSi.hStdInput:=hReadConsol
struSi.hStdOutput:=hWriteConsol
struSi.hStdError:=hWriteConsol
// struSi.wShowWindow := SW_HIDE

uErr:=CreateProcess(AsPsz("BorodinoChess 1.0 32-bit.exe" ),; NULL, NULL, NULL, True, ;
NORMAL_PRIORITY_CLASS, NULL, NULL, @struSI, @struPI)

AltD()

uErr:=WriteFile( hWrite, AsPsz("quit"+CHR(13)), PszLen(AsPsz("quit"+CHR(13))), @nBR, NULL)


Страницы: 1  новая тема
Раздел: 
Программирование на CAVO / / Использование IPC

Отвечать на темы могут только зарегистрированные пользователи

KXK.RU