Как использовать параметры коммандной строки?

Материал из DRKB

Как использовать параметры коммандной строки?[править | править код]

  • Paramcount - показывает сколько параметров передано
  • Paramstr(0) - это имя с путем твоей программы
  • Paramstr(1) - имя первого параметра
  • Paramstr(2) - имя второго параметра и т.д.

Если ты запускаешь:

 с:\myprog.exe /a -b22 c:\dev
  • Paramcount будет равен 3
  • Paramstr(0) будет равен с:\myprog.exe
  • Paramstr(1) будет равен /a
  • Paramstr(2) будет равен -b22
  • Paramstr(3) будет равен c:\dev

Параметр это просто строка, набор букв, выполнить ее нельзя - ты можешь только проверить на наличие строки и если она присутствует, то выполнить какое либо действие, это действие ты должен написать сам, никаких стандартных действий нет.

Например у тебя возможно 3 параметра:

  • "/v" - выдать сообщение
  • "/c" - покрасить форму в синий цвет
  • "/f" - поменять заголовок формы
if ParamStr(1) = '/v' then
  ShowMessage('Parameter "/v" was found!');
if ParamStr(1) = '/c' then
  Color := clBlue;
if ParamStr(1) = '/f' then
  Caption := 'Parameter "/f" was found';

Поставь этот код на событие формы onActivate, откомпилируй и попробуй запустить программу с одним из 3-х указанных параметров и ты увидишь что произойдет.


Функция

type TSysCharSet = set of Char;

Function FindCmdLineSwitch(const Switch: string;
                           SwitchChars: TSysCharSet;
                           IgnoreCase: Boolean): Boolean;

Функция определяет, была ли передана приложению в качестве параметра командной строки строка Switch. Параметр IgnoreCase указывает должен ли учитываться регистр. Параметр SwitchChars идентифицирует допустимые символы-разделители (например, "-", "/").


Author: Vit (www.delphist.com, www.drkb.ru, www.unihighlighter.com, www.nevzorov.org)
Source: http://atrussk.ru/delphi/
ID: 00073