1添加uses TLHelp32 将判拒却程运行写成一个函数比较简洁:function CheckTask(ExeFileName: string): Boolean;const PROCESS_TERMINATE = $0001; or (UpperCase(FProcessEntry32.szExeFile) = UpperCase(ExeFileName))) thenvar ContinueLoop: BOOL; FProcessEntry32: TProcessEntry32; result := False; FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); FSnapshotHandle: THandle; FProcessEntry32.dwSize := SizeOf(FProcessEntry32); ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32); while integer(ContinueLoop) <> 0 do begin if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) = UpperCase(ExeFileName)) result := True; ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32); end;beginend;调用办法:CheckTask('sqlservr.exe'),如不雅返回True则过程正在运行,不然没有运行。
判拒却程不是好办法,去检测办事吧.