请问怎么判断文件是否已经被打开。或者可执行文件已经运行?

zmh101 2006-04-26 09:16:02
请问怎么判断文件是否已经被打开。或者可执行文件已经运行?
...全文
163 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
DURON800 2006-04-29
  • 打赏
  • 举报
回复
判断实例是否已经运行
zzwu 2006-04-28
  • 打赏
  • 举报
回复
我以前一直靠自己设置一个boolean全局变量(例如isOpen)来实现,
当启动程序时,利用form的create事件将它设置为false,
而你执行文件的open操作时将它设为true,
当而执行文件的close操作时将它设为false
这样你就可以利用isOpen来判断文件是否打开,
如果有多个文件,则要设置多个boolean变量。

老之 2006-04-27
  • 打赏
  • 举报
回复
uses Tlhelp32;

var lppe: TProcessEntry32;
Found : boolean;
Hand,hProcess:THandle;
begin
Hand:=CreateToolhelp32Snapshot(TH32CS_SNAPALL,0);
lppe.dwSize:=SizeOf(TProcessEntry32);
found:=Process32First(Hand,lppe);
while Found do
begin
hProcess:=OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ,False,lppe.th32ProcessID);
if hProcess>0 then
if lppe.szExeFile='QQ.exe' then
begin
ShowMessage('QQ.exe已经运行');
exit;
end;
Found := Process32Next(Hand,lppe);
end;
ShowMessage('QQ.exe没有运行');
end;
cdsun 2006-04-27
  • 打赏
  • 举报
回复
查找窗口
zmh101 2006-04-26
  • 打赏
  • 举报
回复
在线等。。。
zmh101 2006-04-26
  • 打赏
  • 举报
回复
要在程序中写代码判断啊。老大
大熊猫侯佩 2006-04-26
  • 打赏
  • 举报
回复
查看进程表中是否有相似的进程名,或运行进程空间的指定位置是否有
符合要求的特征字符串。

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧