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

Вниз

"Вытащить" данные из DOS окна   Найти похожие ветки 

 
Itap ©   (2004-07-25 15:34) [0]

Здраствуйте, столкнулся с проблемой, если кто-знает напишите, заранее благодарю.
Через команду:
WinExec(PChar("rsh " +Edit1.Text+" -l "+Edit2.Text+" "+Edit3.Text), SW_SHOWNORMAL );
посылаю запрос на Cisco устройство, в зависимости от команды в DOS окне выводятся определённые данные и окно DOS-a закрывается.
Если кто сталкивался с такой задачей, подскажите как информацию из DOS окна "перекинуть" на форму к примеру в Memo или например сохранить информацию с выходными данными из окна DOS-a на компьютер, чтоб потом их вытащить из полученного файла на форму.
С уважением, Николай.


 
AndrewVolkov ©   (2004-07-25 17:12) [1]

Насколько я помню, если команда чего-то выдает на экран - хелп, параметры настройки и т.д, то в НТ можно было сделать редирект для вывода, например в файл

dir /w/p >>a.txt

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

Вот пример записи строки

far.exe /? >> a.txt

а это содержимое файла а.тхт. Соответственно на экране Дос окно ты не увидишь.
The following switches may be used in the command line:

/?   This help
/a   Disable display of characters with codes 0 - 31 and 255.
/ag  Disable display of pseudographics characters.
/e[<line>[:<pos>]] <filename>
     Edit the specified file.
/i   Set small (16x16) icon for FAR console window.
/p[<path>]
     Search for "common" plugins in the directory, specified by <path>.
/u <username>
     Allows to have separate settings for different users.
/v <filename>
     View the specified file. If <filename> is -, data is read from the stdin.
/co  Forces FAR to load plugins from the cache only.
/x   Disable exception handling.


 
Itap ©   (2004-07-25 17:42) [2]

Очень интересный вариант, главное рабочий, отлично, я сейчас ещё другие варианты пробую, если получатся, напишу как ещё можно эту проблему рашить.


 
P.N.P. ©   (2004-07-25 17:59) [3]

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


 
Piter ©   (2004-07-25 18:18) [4]

http://www.sources.ru/delphi/system/capturing_output_from_console.shtml

Примечания от меня:

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;


 
Itap ©   (2004-07-25 19:00) [5]

>Piter ©   (25.07.04 18:18) [4]
>http://www.sources.ru/delphi/system/capturing_output_from_conso>le.shtml

>Примечания от меня:

>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, Вы доли очень полезную информацию. Всем большое спасибо.


 
Piter ©   (2004-07-25 19:51) [6]

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

Во-вторых, зачем выводить файл, чтобы опять его потом считывать... лучше сразу считывать программно...



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

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

Наверх




Память: 0.46 MB
Время: 0.024 c
3-1092390857
HanIP
2004-08-13 13:54
2004.09.12
Процедура довавления записи


3-1092651951
Lizka
2004-08-16 14:25
2004.09.12
как редактировать DBEdit?


1-1093346764
mouse_web
2004-08-24 15:26
2004.09.12
Как поставить QuickReport ?


1-1093840510
SNV-Soft
2004-08-30 08:35
2004.09.12
Как формат jpeg или gif преобразовать к формату bmp


1-1093707686
Seldon
2004-08-28 19:41
2004.09.12
Значение свойства из DFM





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский