小弟我,用delphi写一程序,其中需要点击button执行一个exe文件,小弟我用的是winexec函数直接调用这个exe文件,可是问题是当小弟我第一次点击时:执行了该程序,而我没关闭这个程序,让她最小化了,我第二次点击时,又打开了一个新的文件,而不是把先前的那个最小化的执行,小弟我的问题就是:如何让我第一次点击的是打开文件,而以后每次点击都是执行这个已打开的文件(或者说是
将其窗口从最小化变为正常化,或最大化)。
各位大虾,能给出详细的代码,或者具体的实现方法(包括函数),小弟不胜感激,定散分100
将其窗口从最小化变为正常化,或最大化)。
各位大虾,能给出详细的代码,或者具体的实现方法(包括函数),小弟不胜感激,定散分100
解决方案 »
- 怎么把1到9999的数字转成 4位字符串0001 0002 0003
- 请问有比ListView显示速度更快的相应控件吗?
- 函数指针
- 大家看看是什么问题!急啊!!!
- Delphi 7.0里的那个报表控件到底怎么用啊。
- 在程序里怎分辩当前接着的打印机是哪一种?
- 请问哪位知道采用逆波兰式方式实现的公式解析器的源码或在那里能找到?高分相送!
- DELPHI+mssql开发的c/s结构,局域网内无法通讯,请高手指教!!!
- XE 执行了一个MessageDlg为什么会报错
- 一开机就给它直接自动运行声音文件怎么弄?
- 请问用FASTREPORT如何用传参数的方法控制其打印分数?
- 能否做到:AdOconnection闲时自动断开,需要时自动连接?
以后执行WinExec时,检查以前保留的程序的窗口句柄是否有效,有效则用ShowWindow函数调用该窗口,无效则返回第1步。不过,我建议使用CreateProcess来代替WinExec。
var
Ahandle:Thandle;
begin
AHandle:=FindWindow(nil,'你的窗体caption');
if AHandle<>0 then
begin
postmessage(AHandle,WM_SYSCOMMAND,SC_MAXIMIZE,0);
end
else
begin
winexec('***.exe', SW_NORMAL);
end;
end;