L
Lamb
Unregistered / Unconfirmed
GUEST, unregistred user!
我要删除多个文件到回收站,删除的代码很多页面和网站都有。但是,如果我要删除的目前<br>正在被其他其他程序使用,SHFileOperation总是出现错误,而删除没有使用的文件则没有<br>问题。我尝试写了一段代码检查文件是否被使用,如下:<br>function IsFileInUse(fName:string):boolean;<br>var <br> HFileRes : HFILE; <br>begin <br> Result := false; <br> if not FileExists(fName) then <br> exit; <br> HFileRes := CreateFile(pchar(fName), GENERIC_READ or GENERIC_WRITE,0, nil, OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL, 0); <br> Result := (HFileRes = INVALID_HANDLE_VALUE); <br> if not Result then <br> CloseHandle(HFileRes); <br>end;<br>可是依然不能避免SHFileOperation出现错误,怎么办呢?我试了很多方式,例如在删除每<br>一个文件是使用try...except来容错等都没有作用。不知道谁能够帮助我。