delphi 如何给程序添加启动参数? 50
想给程序启动时自动命令-cp:utf-8现在工程文件的主程序begin和end之间的代码为:beginSysUtils.FormatSettings.DecimalSep...
想给程序启动时自动命令 -cp:utf-8
现在工程文件的主程序 begin和end之间的代码为:
begin
SysUtils.FormatSettings.DecimalSeparator := '.';
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.UpdateFormatSettings := False;
Application.HintHidePause := 10000;
Application.Title := wbApplicationTitle;
Application.CreateForm(TfrmMain, frmMain);
Application.Run;
end.
是让程序编译出来后能自带-cp:utf-8这个命令参数启动 展开
现在工程文件的主程序 begin和end之间的代码为:
begin
SysUtils.FormatSettings.DecimalSeparator := '.';
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.UpdateFormatSettings := False;
Application.HintHidePause := 10000;
Application.Title := wbApplicationTitle;
Application.CreateForm(TfrmMain, frmMain);
Application.Run;
end.
是让程序编译出来后能自带-cp:utf-8这个命令参数启动 展开
追问
能实例说说怎么用吗?在网上查了后试了几次没效果
追答
比如,你用delphi编写的程序经编译后为abc.exe,要把字符串xyz传递给程序abc,可以在命令行中执行“abc.exe xyz”,也可以创建程序abc的快捷方式,在快捷方式中设定命令行参数。
以下是在主窗体的create代码中获取命令行参数的情况,供参考:
procedure TForm1.FormCreate(Sender: TObject);
var s,ss,s1,s2:string;
i:integer;
begin
if paramcount=1 then
begin
ss:=paramstr(1);
s2:=ss;
i:=pos('.',ss);
s1:='';
if i=0 then s1:=''
else begin
while ss[length(ss)]<>'.' do begin
s1:=ss[length(s)]+s1;
ss:=copy(ss,1,length(ss)-1);
end;
ss:=copy(ss,1,length(ss)-1);
end;
if table1.active then table1.Refresh;
table1.close;
table1.tablename:=s2;
queryx:=ss;
table1.Open;
form1.Caption:='知识库-'+s2;
if table1.active then
begin
n1.enabled:=true;
n4.Enabled:=true;
end else
begin
n1.enabled:=false;
n4.Enabled:=false;
end;
end;
end;
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询