Функція FindCmdLineSwitch в Delphi визначає, чи було передано певний перемикач параметрів.
SysUtils unit
- function FindCmdLineSwitch (const SwitchValue : string) : Boolean;
- function FindCmdLineSwitch (const SwitchValue : string; IgnoreCase : Boolean) : Boolean;
- function FindCmdLineSwitch (const SwitchValue : string; SwitchChars : TSysCharSet; IgnoreCase : Boolean) : Boolean;
Функція FindCmdLineSwitch сканує командний рядок (програма + параметри, які використовуються для виклику поточної програми) для певного перемикання параметрів. Це позбавляє кодера від цієї діяльності синтаксичного аналізу.
Перемикачі – це необов’язкові параметри з префіксом:
/ для Windows - для Linux
але може бути вказаний в SwitchChars версії 3 функції.
SwitchValue слідує за символом префікса та є значенням, яке сканується цією функцією в командному рядку.
Параметр IgnoreCase у версіях 2, 3 функції визначає, ігноруєчи сканування ігнорує регістр SwitchValue. Значення за замовчуванням True.
Функція FindCmdLineSwitch: Пошук параметрів програми для 3 перемикачів
begin
// Перед виконанням цього коду скористайтеся опцією меню Run/parameters
// для встановлення наступних параметрів командного рядка: /def abc /ghi
ShowMessage(CmdLine); // Показ команди, що виконується + параметри
// Скільки параметрів було передано?
ShowMessage(IntToStr(ParamCount)+' параметрів');
// Сканування на параметри parm1, parm2 та parm3
if FindCmdLineSwitch('abc')
then ShowMessage('abc знайдено')
else ShowMessage('abc НЕ знайдено');
if FindCmdLineSwitch('def')
then ShowMessage('def знайдено')
else ShowMessage('def НЕ знайдено');
if FindCmdLineSwitch('ghi')
then ShowMessage('ghi знайдено')
else ShowMessage('ghi НЕ знайдено');
end;
Результат
"C:\Program files\Borland\Delphi7\Projects\Project1.exe" /def abc /ghi
3 параметра
abc НЕ знайдено
def знайдено
ghi знайдено
Подібні функції, процедури та команди
CmdLine — містить текст, що використовується під час запуску поточної програми.
ParamCount — видає кількість параметрів переданих поточній програмі.
ParamStr — повертається один із параметрів, які використовуються для запуску поточної програми.
TSysCharSet — символи, які використовуються наданими функціями аналізу рядка.
