2009-10-20 2 views
5

작업 스케줄러를 사용하여 X 일마다 특정 응용 프로그램 명령을 실행할 계획입니다. Scheduler가 명령 줄 매개 변수를 먼저 실행할 수 있도록 먼저 명령 줄 매개 변수에 대한 지원을 작성해야합니까?Delphi 프로그램에서 명령 줄 매개 변수를 어떻게 인식합니까?

그렇다면 누구나 적절한 명령 매개 변수 구성 요소를 알고 있습니까?

답변

15

에 대한 래퍼입니다.

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

그래서 호출하면 다음과 같은 결과를

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

왜 우리가 이것을 Windows Scheduler에 내장하지 않았습니까? 당신은 당신이 델파이의 inbuild 기능을 사용할 수 있습니다 시작시 응용 프로그램에 전달 된 모든 cmd를 줄 매개 변수를 읽으려면

+0

어떻게 cmd 매개 변수를 만드시겠습니까? – Tom

+0

@ 톰 : 모하메드의 대답을보십시오. –

+1

Jeroen, 나는 그것이 그가하는 것을 정확하게 계획 한 것이라고 생각합니다. 그는 자신의 프로그램이 Task Scheduler가 호출 할 명령을 이해하는 방법을 알지 못합니다. –

12

당신은 SysUtils를 장치에서 FindCmdLineSwitch을 고려하실 수 있습니다를 줄 것이다 그래서

c:\myapp.exe -foo -bar 

같은 프로그램.

이 명령 라인 스위치의 존재를 확인 케이스를 무시할지 여부를 지정하고 선택적 예컨대 다른 스위치자를 사용할 수
function FindCmdLineSwitch(const SwitchValue:string):Boolean; 
function FindCmdLineSwitch(const SwitchValue:string; IgnoreCase:Boolean):Boolean; 
function FindCmdLineSwitch(const SwitchValue:string; SwitchChars:TSysCharSet; IgnoreCase:Boolean):Boolean; 

'-'또는 '/'

관련 문제