Запуск дос-программы и сохранение результата ее ра

Тема в разделе "Delphi - Система", создана пользователем jack, 18 авг 2004.

Статус темы:
Закрыта.
  1. jack

    jack Гость

    Добрые люди! Подскажите, пожалуйста
    Как получить текст выдаваемый dos-программой и поместить его, на пример, в элемент memo? Если возможно, чтобы и окно самой досовской програмки тоже было.
     
  2. zubr

    zubr Гость

    jack

    Создай форму Form1 с компонентом Memo1, сохрани как Unit1.pas. Открой консольное приложение со следующим кодом:

    program Project1;
    {$APPTYPE CONSOLE}
    uses
    SysUtils, Unit1;

    var
    f:TForm1;
    s:string;

    begin
    f:=TForm1.Create(nil);
    s:='stroka1';
    Writeln(s);
    f.Memo1.Lines.Add(s);
    s:='stroka2';
    Writeln(s);
    f.Memo1.Lines.Add(s);
    s:='stroka3';
    Writeln(s);
    f.Memo1.Lines.Add(s);
    f.ShowModal;
    f.Close;
    Readln;
    end.

    Надеюсь ты понял, что файлы Unit1.pas и Unit1.dfm должны быть в одном каталоге с консольным приложением.
     
  3. jack

    jack Гость

    <!--QuoteBegin-QUOTE+zubr-->
    <span class="vbquote">(QUOTE @ zubr)</span><!--QuoteEBegin-->jack

    Создай форму Form1 с компонентом Memo1, сохрани как Unit1.pas. Открой консольное приложение со следующим кодом...[/quote]
    Дело в том что програмка досовская, а не консольное приложение. Написали ее давно, и переписать ее нет возможности. Она работает в режиме (?) PMODE/W DOS Extender v1.33.

    Что это такое я, правда, не знаю, но хочу, если такое вообще возможно, все текстовые сообщения которые она выводит. И, по возможности, хочу оставить само коммандное окно. Хотя, как вариант, можно и без него - тоже будет полезно.

    Насколько я понимаю, тут дело в потоке вывода... конечно это все невежественные домыслы.

    PS. для примера - перехват результата трассировки tracert.exe. понимаю что это совсем не то, но все же..
     
  4. Kuljok

    Kuljok Гость

    <!--QuoteBegin-jack+18:08:2004, 13:51 -->
    <span class="vbquote">(jack @ 18:08:2004, 13:51 )</span><!--QuoteEBegin-->Добрые люди! Подскажите, пожалуйста
    Как получить текст выдаваемый dos-программой и поместить его, на пример, в элемент memo? Если возможно, чтобы и окно самой досовской програмки тоже было.[/quote]
    Хм... Я когда то занимался этим делом, юзал CreatePipe, даже класс где-то под это дело валяется.. TRedirector, но что будет делать с DOS не знаю..., может заработает, может нет... Но врде должен..., почему бы не заработать... :unsure:
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей