当前位置: 代码迷 >> Delphi >> 关于程序只运行一次并激活已打开的程序的有关问题请问
  详细解决方案

关于程序只运行一次并激活已打开的程序的有关问题请问

热度:779   发布时间:2013-02-26 00:00:00.0
关于程序只运行一次并激活已打开的程序的问题请教
现在在做一个图片浏览器,将程序关联到图像文件,打开图像时会获取到图像的路径。
我想要程序只运行一个实例,第二次点击关联文件时激活已经打开的程序并最大化,并且将获取的参数(图像路径)传递给已打开的程序,不知道怎样才能实现参数传到第一次打的exe?谢谢!

------解决方案--------------------------------------------------------
发图像路径
预定义:

type
  WM_MYMSG=WM_USER+100;

发送端(已知对方句柄):

procedure SendData(Data:string);
begin
  SendMessage(hWindow{对方句柄},WM_MYMSG,Integer(PChar(Data)),0);
end;

接收端:

procedure WMMYSG(var message:TMessage);message WM_MYMSG;
implementation

var
  Data:PChar;//保存接收到的值

procedure WMMYMSG(var message:TMessage);
begin
  Data:=PChar(message.wParam)^;
end;
  相关解决方案