OS/2 FAQ


OS/2 Programming FAQ - пpогpаммиpование. Статья 031

Q Общение дос/ос2 сессий
А можно из DOS сессии пеpедать осевой сессии инфоpмацию минуя диск, напpимеp сообщением или семафоpом или еще как нибудь?
A
(DZ FAQ) Vadim Petrjaev

Через Named Pipe. Если в OS/2 программе ты создаешь Named Pipe с именем \PIPE\FILENAME.PIP, то в досовком окне можешь открыть файл \PIPE\FILENAME.PIP и спокойно туда писать и/или оттуда читать.

А вот REXX, но с использованием REXXIPC.DLL. (Проходила по файлэхам и валяется до сих пор много где.)

/* */

PipeName='\PIPE\SAMPLE\PIPE.EXT'

CALL RxFuncAdd 'PipeLoadFuncs', 'REXXIPC', 'PipeLoadFuncs'
CALL PipeLoadFuncs

dosrc=PipeCreate('PipeHnd',PipeName,'I','M')
IF \(dosrc=0) THEN DO
Say "Error opening pipe. Exiting"
EXIT 12
END
DO FOREVER
dosrc=PipeConnect(PipeHnd)
IF \(dosrc=0) THEN DO
Say "Error connecting pipe. Exiting"
EXIT 12
END
dosrc=PipeRead(PipeHnd,'Msg')
Say "Receiving message: "Msg
IF SUBSTR(Msg,1,6)='ENDJOB' THEN LEAVE
CALL PipeDisconnect(PipeHnd)
END
EXIT
Запускаем эту приблуду в OS/2 сессии. Потом из любой (в том числе DOS сессии)
можно развлекаться.
echo Hello, world! > \PIPE\sample\pipe.Ext
echo Test message. > \pipe\sample\pipe.ext
echo ENDJOB > \pipe\sapmle\pipe.ext

К предыдущей статье | К оглавлению раздела | К следующей статье

Вернуться к списку разделов FAQ.

Если у вас есть вопросы или пожелания, пишите, мы будем рады.

Данный FAQ cоставили Ivan Borovicov и Viatcheslav Odintsov (2:5020/181) на основе OS/2 FAQ Дмитрия Завалишина (dz) и материалов переписки в группе эхоконференций su.os2.*. Оформление статей: Николай Королев. Программирование JSP для RU/2: Евгений Кулешов. Благодарности: Дмитрию Максимовичу (MaximDim) за громадную помощь на первых этапах и Дмитрию Бану (banshee) за его помощь при проверке текста.



Интересные ссылки:
Комментариев к странице: 0 | Добавить комментарий
Домой | Проект ядро Core/2 | Проект OS/4 Download | Новости | Гостевая книга | Подробно обо всем | Нужные программы | Проекты | OS/2 FAQ | Всячина | За и Против | Металлолом | #OS2Russian | RDM/2 | Весёлые картинки | Наша галерея | Доска объявлений | Карта сайта | ПОИСК | ФОРУМ