如题,Delphi中有没有函数判断一个文件是否正在被另一程序使用?
谢谢~
解决方案 »
- 一个类当中有TTimer控件,而我想在另外一个类当中调用,请问如何使用?
- fastreport 中pascal脚本 ComponentCount 怎么用?
- 怎样隐藏窗体.
- dxDBGrid能否做成每行的颜色交替显示?
- delphi的Tmemo中如何设定每一行的文本的颜色,在线等待
- 关于messagedlg的问题。
- access 如何与Delphi结合,那位大虾得空清帮助小弟,急急急!
- ■■新手请教■■ 怎么在自己的程序中加入资源然后写出
- 谁用过createfile在内存中创建过文件吗?
- 各位请进,一个关于自动发送邮件的问题。谢谢!
- 串口设备改装为USB接口时,程序如何编程?
- 大家不要这样呀,你们帮帮我,好吗?
var
HFileRes : HFILE;
begin
Result := false;
if not FileExists(fName) then
exit;
HFileRes := CreateFile(pchar(fName), GENERIC_READ or GENERIC_WRITE,0, nil, OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL, 0);
Result := (HFileRes = INVALID_HANDLE_VALUE);
if not Result then
CloseHandle(HFileRes);
end;
function TForm1.IsFileInUse(fName: string): boolean;
var
HFileRes : HFILE;
begin
Result := false;
try
if not FileExists(fName) then
begin
Result:=False;
Exit;
end;
except
Result:=True;
Exit;
end;
HFileRes := CreateFile(pchar(fName), GENERIC_READ or GENERIC_WRITE,0, nil, OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL, 0);
Result := (HFileRes = INVALID_HANDLE_VALUE);
if not Result then
CloseHandle(HFileRes);
end;
你可以先判断是否Exists,也可以通过GetLastError判断是否已经被用。