Витягти - дані із DOS вікна

Здрастуйте, зіткнувся з проблемою, якщо хтось знає напишіть, заздалегідь дякую. , SW_SHOWNORMAL ); надсилаю запит на Cisco пристрій, залежно від команди в DOS вікні виводяться певні дані і вікно DOS-a закривається. Якщо хтось стикався з таким завданням, підкажіть як інформацію з DOS вікна "перекинути" на форму наприклад в Memo або наприклад зберегти інформацію з вихідними даними з вікна DOS-a на комп'ютер, щоб потім їх витягнути з отриманого файлу на форму. З повагою, Миколо.

Наскільки пам'ятаю, якщо команда чогось видає на екран - хелп, параметри налаштування тощо, то НТ можна було зробити редирект для виведення, наприклад у файл

ось воно і все. А з файлу вже читай, як хочеш.

Ось приклад запису рядка

/? Цей Help /a Disable display of characters with codes 0 - 31 and 255. /ag Disable display of pseudographics characters. /e[ [:

]] Edit the specified file. /i Set small (16x16) icon for FAR console window. /p[

] Search for "common" plugins in the directory, specified

. /u Якщо ви маєте окремі налаштування для різних користувачів. /v Показати конкретний файл. If is -, data is read from the stdin. /co Forces FAR для load plugins від cache only. /x Disable exception handling.

Дуже цікавий варіант, головне робітник, добре, я зараз ще інші варіанти пробую, якщо вийдуть, напишу як ще можна цю проблему вирішити.

Подивися http://www.renderman.ru/forum/download.php/1,336,24/FoxUtils.txt Використовувати так: uses FoxUtils; var MyChild: TChildProc; MyChild := TChildProc.Create(EXEFileName, ParamStr); і потім ReadStrFromChild WriteToChild

Примітки від мене:

1) шлях до файлу треба вказувати повністю 2) рядки повертаються в DOS кодуванні, треба перекодувати

procedure TForm1.Button1Click(Sender: TObject); var s: string; begin s := GetDosOutput("c:\winnt\system32\rsh.exe"); OemToChar(PChar(s), pChar(s)); showmessage(s); end;

>Примітки від мене:

>1) шлях до файлу треба вказувати повністю >2) рядки повертаються в DOS кодуванні, треба перекодувати

>procedure TForm1.Button1Click(Sender: TObject); >var > s: string; >begin > s := GetDosOutput("c:\winnt\system32\rsh.exe"); > OemToChar(PChar(s), pChar(s)); > showmessage(s); >end;

Та це те чого я хотів досягти. Дякуємо всім за вичерпні відповіді, особливо AndrewVolkov, Ви часто дуже корисну інформацію. Усім дуже дякую.

можна, звичайно, у файл, але судячи з відповіді працюватиме тільки для NT систем.

По-друге, навіщо виводити файл, щоб знову його потім зчитувати. краще одразу зчитувати програмно.