如何判断任何后缀名的文件是关闭状态 ?

解决方案 »

  1.   


    Function FileUse(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; //例如
    if  FileUse('C:\a.exe') then
      ShowMEssage('正在使用');
      

  2.   

    不行哪 , 当文件打开时 , 还是提示文件没有被使用 !! 
    procedure TForm1.Button3Click(Sender: TObject);
    begin
      if fileUse('c:\aa.doc') then
        showMessage('File is being used !')
      else
        showMessage('File is not used !');
    end;