Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.05.27;
Скачать: CL | DM;

Вниз

Консольные приложения   Найти похожие ветки 

 
Oak   (2002-03-25 13:32) [0]

Хай! Проблема>> моя прога(веб-сервер) запускает процесс, являющийся консольным приложением (скрипт). Как бы мне прочесть, то что он (скрипт) выводит в консоль? В ReadConsole надо помимо прочего передавать hConsoleInput (тип HANDLE)... а как мне его получать?


 
Юрий Зотов ©   (2002-03-25 15:27) [1]

1. Сначала вызовите AllocConsole
2. Используйте CreateProcess с bInheritHandles = True.
3. В StartupInfo пропишите:
- dwFlag с STARTF_USESTDHANDLES
- hStdInput = GetStdHandle(STD_INPUT_HANDLE)
4. Это и будет нужный Вам хэндл.
5. Не освобождайте хэндл дочернего процесса раньше времени.
6. В конце вызовите FreeConsole


 
Витамин   (2002-03-25 22:03) [2]

А нельзя ли пример?


 
VuDZ ©   (2002-03-26 01:01) [3]

господи, ну не ужели все на столько ленивые?
http://delphi.vitpc.com/mastering/part_1.htm


 
ION T   (2002-03-26 15:10) [4]

Вот пример описанного выше способа (имхо намного проще, но с одним недостатком по сравнению с трубой - можно прочитать только видимый буфер, т.е. если что-то проскроллировалось вверх, то его уже не достанешь):

http://iont.virtualave.net/pub/delphi/readconsole.zip



Страницы: 1 вся ветка

Текущий архив: 2002.05.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.009 c
1-88394
Ross
2002-05-14 19:11
2002.05.27
Совсем замучался. Помогите


4-88677
Chris
2002-03-27 14:18
2002.05.27
Диалог с проверкой наличия файла


3-88367
Георгинчик
2002-05-02 14:02
2002.05.27
Подскажите, как ускорить следующую операцию. Копирую изтаблицы


4-88686
Толик
2002-03-28 10:56
2002.05.27
Иконка файла


1-88405
Student_
2002-05-15 11:17
2002.05.27
Простой вопрос