Форум: "Начинающим";
Текущий архив: 2007.01.28;
Скачать: [xml.tar.bz2];
ВнизЗапуск с параметрами. Найти похожие ветки
← →
Вася (2007-01-11 12:51) [0]Надо указать при запуске своей программе какой порт открывать для работы. Для этого запущу ее с параметрами:
proga.exe /port 2345
прочитаю параметры
If LowerCase(ParamStr(i)) = "/port" then..
А дальше как? Ведь 2345 это уже второй параметр. Как правильно передать "параметр параметра"? Как это делают мастера?
А если нужно передать несколько значений параметров, например:
proga.exe /port 2345 /t 5000 /a /b 3
Можно какой-нибудь пример показывающий как это сделать правильно?
← →
Anatoly Podgoretsky © (2007-01-11 12:56) [1]> Вася (11.01.2007 12:51:00) [0]
Теперь читай второй параметр, в соответствии с синтаксисом.
← →
Ega23 © (2007-01-11 12:56) [2]
proga.exe /p2345 /t5000 /a /b3
← →
Джо © (2007-01-11 13:02) [3]proga /port=123
и так далее.
← →
Anatoly Podgoretsky © (2007-01-11 13:08) [4]> Ega23 (11.01.2007 12:56:02) [2]
Можно, но не требуется, а если делать так, то есть более общепринятая форма
proga.exe /port:2345
Но зачем, параметр 1 это ключ, параметр 2 его значение и так далее
Данный параметр синтактически всегда должен идти парой ключ-значение
← →
Anatoly Podgoretsky © (2007-01-11 13:08) [5]> Джо (11.01.2007 13:02:03) [3]
Так можно, тогда можно использовать возможности StringList
← →
Desdechado © (2007-01-11 13:10) [6]Я обычно делаю именованные параметры без слэшей и минусов.
ТогдаFGAC.exe DIRECTION=EXP USERID=XXX/1@RICOSERVER PARFILE=export.ini FILE=%1 LOG=export.log OWNER=XXX
При желании или лени можно их последовательно загнать в StringList и читать через liParams.Values[ "DIRECTION" ]
← →
Desdechado © (2007-01-11 13:11) [7]Anatoly Podgoretsky © (11.01.07 13:08) [4]
> Но зачем, параметр 1 это ключ, параметр 2 его значение
традиционно в *nix так сделано
← →
Джо © (2007-01-11 13:17) [8]> [7] Desdechado © (11.01.07 13:11)
> Anatoly Podgoretsky © (11.01.07 13:08) [4]
> > Но зачем, параметр 1 это ключ, параметр 2 его значение
> традиционно в *nix так сделано
Я такого избегаю из-за неоднозначностей разбора.
Например: /pdelphi\bin
как трактовать как параметр p со значением delphi\bin или как параметр /pd со значением elphi\bin?
Лучше, ИМХО, использовать разделитель между param/value, например, "=", как в [3].
← →
Ega23 © (2007-01-11 13:25) [9]
> Можно, но не требуется, а если делать так, то есть более
> общепринятая форма
Я тупо из isql идею передрал.
← →
Anatoly Podgoretsky © (2007-01-11 13:27) [10]> Desdechado (11.01.2007 13:11:07) [7]
Не надо про *nix, там тоже полный интернационал, при том оба случая практически одинаково встречаются, например из zip параметр со значением указывается так
-b path
встречал в других и так
-b:path
-b=path
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.01.28;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.042 c