[delphi] Przechwytywanie wyniku aplikacji konsolowej

Odpowiedz Nowy wątek
2006-11-03 22:41
0

Mam funkcje:[url=http://4programmers.net/Delphi/FAQ/Jak_wy%C5%9Bwietli%C4%87_wynik_dzia%C5%82ania_aplikacji_konsolowej]Link[/url]
Chcę przechwycić wynik działania kompilatora gcc:

RunCaptured('C:', 'gcc', '-v', 'raport.txt', true);

ale nie ma żadnego wyniku, co więcej kiedy napiszę:

RunCaptured('C:', 'make', '-v', 'raport.txt', true);

wszystko działa.

Co robię źle?

Pozostało 580 znaków

2006-11-03 22:55
0

Spróbuj przerobić ten kod: dostęp do cmd z poziomu delphi
Ewentualnie sprawdź - może gcc nie wysyła rezulatatów na standardowe wyjście, ale na standardowe wyjście błędów.


<font color="red">Konto porzucone</span>

Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir 'Szczawik' Włodkowski

Pozostało 580 znaków

2006-11-04 11:16
0

Nie wiedziałem że jest coś takiego jak stderr :P

Czy ktoś może umieścić jakiś przykład. Niestety to co znalazłem w internecie nie działa :(

Pozostało 580 znaków

2006-11-04 20:48
0

W kodzie ode mnie masz przecież odczytywanie zarówno wyjścia, jak i wyjścia błędów.

Odpowiada za to ta część:

  with info do
    begin
    cb := sizeof( info );
    dwFlags := STARTF_USESHOWWINDOW or STARTF_USESTDHANDLES;
    wShowWindow := SW_HIDE;
    hStdInput := 0;
    hStdOutput := writePipe; // <-- przypisanie uchwytu jako wyjścia
    hStdError := writePipe; // <-- przypisanie uchwytu jako wyjścia błędów
    end;

<font color="red">Konto porzucone</span>

Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir 'Szczawik' Włodkowski

Pozostało 580 znaków

2006-11-04 22:42
0

Problem rozwiązany, należy zrobić dokładnie jak w linku który podał Szczawik tzn. odpalać programy z cmd.exe. Ja próbowałem zamiast cmd.exe odpalić gcc.exe i to nie dawało żadnego rezultatu.

Wielkie dzięki Szczawik! :)

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0