Most command line programs and some Windows programs has the ability to look for and handle parameters passed to it such as "/? /HELP /Q". If you want to add similar functionality to your Delphi programs, you can start with a function like this:
program myprog;
uses
SysUtils;
function CmdLineParamFound(
sParamName : String ) : Boolean;
const
{ assume that command line parameters
start with the "/" character }
c_token = '/';
var
i : integer;
sTemp : string;
begin
result := False;
for i := 1 to ParamCount do
begin
sTemp := ParamStr( i );
if( c_token = sTemp[ 1 ] )then
begin
if( ( c_token +
UpperCase( sParamName ) ) =
UpperCase( sTemp ) )then
begin
result := True;
exit;
end;
end;
end;
end;
begin
{
following "if" statement will be triggered
if called with the /HELP parameter:
myprog.exe /HELP
}
if( CmdLineParamFound( 'HELP' ) )then
begin
{
display help here...
}
end;
{
myprog.exe /FULLSCREEN
}
if( CmdLineParamFound( 'FULLSCREEN' ) )then
begin
{
run program in full screen mode
}
end;
end.
uses
SysUtils;
function CmdLineParamFound(
sParamName : String ) : Boolean;
const
{ assume that command line parameters
start with the "/" character }
c_token = '/';
var
i : integer;
sTemp : string;
begin
result := False;
for i := 1 to ParamCount do
begin
sTemp := ParamStr( i );
if( c_token = sTemp[ 1 ] )then
begin
if( ( c_token +
UpperCase( sParamName ) ) =
UpperCase( sTemp ) )then
begin
result := True;
exit;
end;
end;
end;
end;
begin
{
following "if" statement will be triggered
if called with the /HELP parameter:
myprog.exe /HELP
}
if( CmdLineParamFound( 'HELP' ) )then
begin
{
display help here...
}
end;
{
myprog.exe /FULLSCREEN
}
if( CmdLineParamFound( 'FULLSCREEN' ) )then
begin
{
run program in full screen mode
}
end;
end.
Listing #1 : Delphi code. Download cmdline (0.58 KB).