好急好烦,好多分啊!!求大家急救!.txt(1分)

  • 主题发起人 主题发起人 leo.1999
  • 开始时间 开始时间
L

leo.1999

Unregistered / Unconfirmed
GUEST, unregistred user!

pas下面:
//复制副本,同时运行副本,再关闭自己
begin
if application.exename<> 'd:/1.exe' then
begin
copyfile(pchar(application.exename),pchar('d:/1.exe'),false);
winexec(pchar('d:/1.exe'),sw_hide);//运行WINDOWS下的程序
application.terminate;//退出


dpr下面:
//防止2次运行
const classname='tform1';//注册窗口名
var
handle:integer;
begin
handle:=findwindow(classname,nil);//如果有就自己挂掉自己,及防止2次运行
if handle<>0 then
halt;
-----------------------------------------------------------------------------------

请问上面2个功能怎么兼得?????
每个功能都有用,但加到一起,就不能用了!!!
 
//可以利用ParamStr属性
//复制副本,同时运行副本,再关闭自己
//在uses部分加入shellapi
begin
if application.exename<> 'd:/1.exe' then
begin
copyfile(pchar(application.exename),pchar('d:/1.exe'),false);
ShellExecute(handle, pchar('open'), pchar('d:/1.exe'), pchar('0'), pchar(''), sw_hide););//运行WINDOWS下的程序
application.terminate;//退出
end;
end;

//防止2次运行
const classname='tform1';//注册窗口名
var
handle:integer;
begin
handle:=findwindow(classname,nil);//如果有就自己挂掉自己,及防止2次运行
//如果是自己启动自己就不挂掉自己,等着启动自己的实例挂掉
if (handle<>0) and(if LowerCase(ParamStr(i))<>'0')
then
halt;
end;
 
接受答案了.
 

Similar threads

后退
顶部