Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.048 c
3-1081790482
Николай
2004-04-12 21:21
2004.04.11
Проблемы с созданием дистрибутива БД


1-1079965512
ivanenko
2004-03-22 17:25
2004.04.11
работа с указателями в TList


3-1079510121
Cj_Nik
2004-03-17 10:55
2004.04.11
Отобразить первые n записей талицы


1-1079866444
Def_128
2004-03-21 13:54
2004.04.11
Ошибка при работе с DLL. "access violation at ... "


7-1080318300
Vadim
2004-03-26 19:25
2004.04.11
Перезагрузка




   Наверх