读书人

想知道文件被哪些进程引用类似于unl

发布时间: 2012-02-22 19:36:56 作者: rapoo

想知道文件被哪些进程引用,类似于unlocker的原理
这种功能是不是使用api函数来实现的?用哪些Api?急于等待中啊

[解决办法]
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 {this is the trick!}, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
Result := (HFileRes = INVALID_HANDLE_VALUE);
if not Result then
CloseHandle(HFileRes);
end;

对于某些类型的文件来说,这种方式判断不起作用,挺复杂的
[解决办法]
http://www.codeproject.com/shell/OpenedFileFinder/OpenedFileFinder_src_vc6.zip

读书人网 >.NET

热点推荐