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

Вниз

Как получить параметр командной строки?   Найти похожие ветки 

 
Yong ©   (2004-04-19 23:52) [0]

При запуске программы в командой строке через пробел после ее имени пишется файл, который должен быть в нее загружен. Например
C:\windows\notepad.exe Document.txt. Как получить имя этого файла (Document.txt), т.е. строковой параметр? Или, например, ключ. Подскажите пожалуйста, если кто знает.


 
Yanis ©   (2004-04-20 00:10) [1]

ParamStr(1)
Указывает на первый параметр. Например, прога с путем и параметром D:\downloads\mydir\myprog.exe d:\docs\doc.txt, то ParamStr(1) будет равно d:\docs\doc.txt
Ещё тебе понадобится функция ParamCount - она возвращает количество параметров.
Например:

for i :=1  to ParamCount do ShowMessage(ParamStr(i));

Будут выводиться сообщения с параметрами командной строки.
В твоём случае, можно вместо ShowMessage написать WinExec("Notepad.exe"+" "+ParamStr(i)).


 
Yong ©   (2004-04-20 00:21) [2]

Спасибо, Yanis!


 
Германн ©   (2004-04-20 00:25) [3]

При этом хорошо бы еще всегда помнить, что в отличие от ДОСа, нынешние имена файлов и каталогов могут содержать пробелы. И в таком случае стоит учесть, что передавать через коммандную строку имя такого файла принято заключая его в кавычки.


 
Yong ©   (2004-04-20 00:30) [4]

Спасибо, Германн!


 
Anatoly Podgoretsky ©   (2004-04-20 01:21) [5]

Германн ©   (20.04.04 00:25) [3]
ДОС не препятствовал пробелам в имени файла, иногда это использовалось для защиты файлов


 
Германн ©   (2004-04-20 02:11) [6]

2 Anatoly Podgoretsky ©   (20.04.04 01:21) [5]
Дык я же не о том.
Я же о передаче имени файла в качестве параметра командной строки!

Хотя ДОС-то, может и не препятствовал, но как в ДОСе сформировать такой файл?



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

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

Наверх




Память: 0.48 MB
Время: 0.031 c
14-1079370428
txt
2004-03-15 20:07
2004.04.11
КТО ОТЛИЧНО ЗНАЕТ Delphi И НЕПРОЧ ЗАРАБОТАТЬ??


1-1082575722
Dmk
2004-04-21 23:28
2004.04.11
Порядок вызова секции Initialization по модулям.


1-1082678989
Бегун
2004-04-23 04:09
2004.04.11
TListBox


14-1082369956
Aleksandr
2004-04-19 14:19
2004.04.11
Сколько брать за программу?


3-1081503969
GIL
2004-04-09 13:46
2004.04.11
почему не грузится изображение?