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

Вниз

Как сделать консольное прилодение, кот. взаимодействует с *.bat?   Найти похожие ветки 

 
NeyroSpace   (2004-02-11 16:53) [0]

rename myfile.txt %Project1.exe%
Т.е. нужно, чтобы консольный Project1.exe выдал после своей работы в консоль некую строку, которая и стала бы новым именем файла.


 
NeyroSpace   (2004-02-11 16:54) [1]

Извиняюсь! Читал, читал и все равно ошибся... ПРИЛОЖЕНИЕ имелось ввиду в заголовке.


 
DiamondShark   (2004-02-11 17:31) [2]

Через переменные окружения.


 
NeyroSpace   (2004-02-11 17:33) [3]

Как?
set VAR=%Project1.exe%
пишет переменная среды VAR не была определена


 
DiamondShark   (2004-02-11 17:43) [4]

Project1.exe
rename myfile.txt %VAR%

А Project1.exe должен выставить VAR


 
NeyroSpace   (2004-02-11 17:59) [5]

А поподробнее?
такое ощущение, что то что выводит Project1.exe консоль не воспринимает... Может нужна особая директива компилятора? Или нужно указать устройство вывода?


 
DiamondShark   (2004-02-11 18:16) [6]

Извиняюсь за дезинформацию. С переменными не получится. Процесс запускается со своей копией окружения.


 
NeyroSpace   (2004-02-11 18:35) [7]

Так а как тогда? Если не ошибаюсь, то CGI интерфейс (TWebModule) тоже работает через консоль. Однако есть какая-то разница в выводе обычного консольного приложения и его. Но впринципе обычная консоль тоже может работать как TWebModule. Только я не помню в чем там нюанс был... Может с батниками та же проблема?
Кто-нибудь вразумите меня!


 
DiamondShark   (2004-02-11 19:00) [8]

CGI-то работает. Передать порождаемому процессу копию окружения можно. Изменить переменные (и передать другому процессу) тоже можно. Вот только обратно их не получить.
А вывод CGI на stdout, т.е. обычный консольный вывод.

Так что подставить вывод в команду не получится.

Разве что трансректальным способом. Например, программа пишет команду в текстовый файл, а батник его CALL-ом потом (кто сказал обкладывает?!) вызывает.


 
panov   (2004-02-11 21:51) [9]

Содержимое .bat-файла:

project1 >$tmpFile
@for /F "eol= tokens=1 delims= " %%i in ($tmpFile) do SET D=%%i
del $tmpFile
echo %D%


project1 - консольное приложение, выводит имя файла - WriteLn(FileName);


 
NeyroSpace   (2004-02-12 09:53) [10]

panov © (11.02.04 21:51) [9]
Можно немного подробнее?
Я не помню что значит @ перед командой? вывод на экран?

/F "eol= tokens=1 delims= " - эта строка тоже загадка...


 
PVOzerski   (2004-02-12 10:07) [11]

Про pipes поищите. Если надо эмулировать stdin для командного процессора. Но зачем для переименования файла привлекать консоль, я понимаю плохо.


 
panov   (2004-02-12 10:12) [12]

>NeyroSpace © (12.02.04 09:53) [10]

Все просто - символ @ подавляет вывод этой команды на консоль... Просто осталась привычка так писать. Можно просто вывод отменить полностью, вставив вначале @echo off


 
NeyroSpace   (2004-01-23 13:37) [13]

/F "eol= tokens=1 delims= "
что делает эта строка?


 
NeyroSpace   (2004-02-12 16:01) [14]

UP



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

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

Наверх





Память: 0.47 MB
Время: 0.007 c
1-12365
MVVD
2004-02-25 12:42
2004.03.05
Одновременная замена в WORD


6-12466
zig
2003-12-29 10:35
2004.03.05
Особеннсть метода Socket.SendText


3-12253
tytus
2004-02-09 13:31
2004.03.05
ВМР в DBGrid


3-12259
sohat
2004-02-09 10:44
2004.03.05
TClientDataSet. Как редактировать


1-12313
bartram
2004-02-25 18:09
2004.03.05
Как сделать hook на нажатие колёсика мыши?





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