2009-10-20 3 views
5

Я планирую запускать определенные команды приложения каждые X дней с помощью Планировщика заданий. Должен ли я сначала поддерживать поддержку параметров командной строки, поэтому Scheduler может выполнить ее?Как определить параметры командной строки в моей программе Delphi?

Если да, то кто-нибудь знает хорошие компоненты параметров команды?

ответ

15

Если вы просто хотите, чтобы читать любые CMD параметры линии, которые были переданы в приложение при запуске вы можете использовать inbuild функции в Delphi.

ParamCount // Number of cmd params passed at startup 
ParamStr(0) // string of param zero 

Так вызова вы программируете как так

c:\myapp.exe -foo -bar 

даст следующий результат

ParamStr(0) = c:\myapp.exe 
ParamStr(1) = -foo 
ParamStr(2) = -bar 
0

Почему бы нам не построить Windows Scheduler?

+0

Как вы создаете параметры cmd? – Tom

+0

@ Тома: см. Ответ Мухаммеда. –

+1

Jeroen, я думаю, это именно то, что он планирует делать. Он просто не знает, как заставить свою программу понять команды, которые будет запускать Task Scheduler. –

12

Вы, возможно, пожелает рассмотреть FindCmdLineSwitch из SysUtils единицы.

function FindCmdLineSwitch(const SwitchValue:string):Boolean; 
function FindCmdLineSwitch(const SwitchValue:string; IgnoreCase:Boolean):Boolean; 
function FindCmdLineSwitch(const SwitchValue:string; SwitchChars:TSysCharSet; IgnoreCase:Boolean):Boolean; 

Это позволяет проверить на наличие переключателя командной строки, указать, следует ли игнорировать его случай, и, возможно, использовать различные символы переключения, например, '-' или '/'