当然有,使用FindWindow得到你运行的窗体的Handle,然后检测这个Handle是否关闭就可以了。查查FindWindow的使用方法。
解决方案 »
- CreateWindowEx 如何把窗体创建在多层的控件上
- 为何Delphi 10 Lite 中sendmessage中TMsg域对应不对?
- UDP远程传送文件 重复传送不了?
- 如何判断TEdit中输入的内容是大写和小写的混合?
- 求购二手《Delphi COM深入编程》
- 如何实现DBGRID自动让选中的蓝条跳到符合条件的记录上
- 如何编写能跨winME、win9X, win2000,winXP平台的程序?
- 高分求救
- 如何断定一个字符串是否为数字?
- 实验室环境下想用PC机模拟PLC控制对象的运行,来检验PLC程序的对错。
- 提交数据库时转为unicode码或gb big5都可以!例程如下
- SQL创建表的问题
WaitForInputIdle完全可以达到你的要求
var
Rslt: LongBool;
StartUpInfo: TStartUpInfo;
ProcessInfo: TProcessInformation;PROCESS_INFORMATION
begin
FillChar(StartupInfo, SizeOf(TStartupInfo), 0);
with StartupInfo do
begin
cb := SizeOf(TStartupInfo);
dwFlags := STARTF_USESHOWWINDOW or STARTF_FORCEONFEEDBACK;
wShowWindow := cShow
end;
Rslt := CreateProcess(PChar(CommandLine), nil, nil, nil, False,
NORMAL_PRIORITY_CLASS, nil, nil, StartupInfo, ProcessInfo);
if Rslt then
with ProcessInfo do
begin
WaitForInputIdle(hProcess, INFINITE);//一直等待,直到进程完全启动
CloseHandle(hThread);
CloseHandle(hProcess
Result := 0;
end
else Result := GetLastError;
end;