有啥方法,可以知道有哪些进程,线程正在使用一个指定的文件。(100分)

  • 主题发起人 主题发起人 torrentwang
  • 开始时间 开始时间
T

torrentwang

Unregistered / Unconfirmed
GUEST, unregistred user!
有啥方法,可以知道有哪些进程,线程正在使用一个指定的文件。
我在作卸载程序出现了一个要卸载的文件,正在被使用,无法删除,真真叫...

如果有源代码那是最好的
 
文件是否正在使用

function IsFileInUse(fName : string ) : boolean;
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;
 
谢谢wine 的回答,可是我主要想知道,每个使用文件的进程,所有的有哪些?
并且杀掉这些进程
 
不行吧,要是 Windows 在用,你也杀掉 Windows?[:D]
 
接受答案了.
 
后退
顶部