Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.09.08;
Скачать: [xml.tar.bz2];

Вниз

Бонально, но надо - как вывести из консоли cerr!   Найти похожие ветки 

 
HolACost!   (2003-08-20 10:33) [0]

Если брать просто ст вывода то всё куль тиап так
print_my_loga.exe>log.txt,
но если прога выводить в cerr, то вывод в консоли!


 
Некрофил - затейник__   (2003-08-20 10:44) [1]

Вообще то програмно можно. Инфа где то была на этом сайте.


 
han_malign   (2003-08-20 10:57) [2]

А cerr подменить не судьба? Это обычный ostream, что хочешь, то ему и назначай...


 
Vlad Oshin   (2003-08-20 10:58) [3]

Мне помогло

Вот кусок реально работающей демонстрационной программы. Консольное приложение надо запускать с унаследованными описателями ввода-вывода (как - см. ниже). var SI: TStartupInfo; PI: TProcessInformation; procedure TForm1.SendCommand(Cmd: string); var S: ShortString; InpHnd: THandle; InpRec: TInputRecord; i: integer; N: DWord; begin if Cmd <> "" then begin S := StrPas(PChar(Cmd)); if ((S[1] > #31) or (Length(S) > 1)) and (Pos(#13, S) = 0) then S := S + #13; InpHnd := GetStdHandle(STD_INPUT_HANDLE); InpRec.EventType := KEY_EVENT; InpRec.Event.KeyEvent.bKeyDown := True; InpRec.Event.KeyEvent.wRepeatCount := 1; InpRec.Event.KeyEvent.wVirtualKeyCode := 0; for i := 1 to Length(S) do with InpRec.Event.KeyEvent do begin wVirtualScanCode := VkKeyScan(S[i]); UnicodeChar := WideChar(S[i]); dwControlKeyState := Hi(VkKeyScan(S[i])); AsciiChar := S[i]; WriteConsoleInput(InpHnd, InpRec, 1, N)) end end end; procedure TForm1.FormCreate(Sender: TObject); begin ZeroMemory(@SI, SizeOf(SI)); with SI do begin hStdInput := GetStdHandle(STD_INPUT_HANDLE); hStdOutput := GetStdHandle(STD_OUTPUT_HANDLE); hStdError := GetStdHandle(STD_ERROR_HANDLE); dwFlags := STARTF_USESTDHANDLES or STARTF_FORCEONFEEDBACK; cb := SizeOf(SI) end; AllocConsole; CreateProcess(Nil, "...", Nil, Nil, True, 0, Nil, Nil, SI, PI) end; procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin CloseHandle(PI.hThread); CloseHandle(PI.hProcess); FreeConsole end; Юрий Зотов

Ketmar © 13.08.03 15:26
>Vlad © 13.08.03 14:45
только для софта, который выводин на экран при помощи int 21h. все остальные весело пролетают мимо.


 
nikkie   (2003-08-20 11:00) [4]

my.exe >stdout.txt 2> stderr.txt



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

Форум: "Потрепаться";
Текущий архив: 2003.09.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.011 c
3-24377
Дмитрий Бессонов
2003-08-15 18:59
2003.09.08
Восстановление данных


1-24506
Anonimus
2003-08-27 10:45
2003.09.08
Работа с календарем


6-24586
Михайлов Антон
2003-04-28 13:27
2003.09.08
Люди, аот такая у меня проблема с IRC


1-24502
Lina
2003-08-27 11:53
2003.09.08
Image


4-24756
miguel1
2003-07-09 13:24
2003.09.08
Ошибка при вызове функции WriteFile?!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский