Board logo

Subject: CnFileSystemWatcher问题 [Print This Page]

Author: toysun    Time: 2009-3-23 11:31     Subject: CnFileSystemWatcher问题

1.4和1.5版本的CnFileSystemWatcher.pas
默认启动监视后,无法修改c:\目录文件名,以下为提示信息

---------------------------
重命名文件或文件夹时出错
---------------------------
无法重命名 ***(文件名) : 文件正在被另一个人或程序使用。
关闭任何可能使用这个文件的程序,重新试一次。
---------------------------
确定   
---------------------------

相关代码
procedure TForm1.CnFileSystemWatcher1Change(FileOperation: TFileOperation;
  const FileName1, FileName2: String);
begin
  caption:=filename1;
end;

[ 本帖最后由 toysun 于 2009-3-23 11:39 编辑 ]
Author: Passion    Time: 2009-3-23 13:41

请问您的操作系统以及IDE版本?
Author: toysun    Time: 2009-3-23 15:34

IDE : delphi7
OS  : xp sp2/sp3 ,win2003 sp2
Author: Passion    Time: 2009-3-23 17:09

感谢报告,此问题能复现。问题出自286行附近的Share Mode参数上,应该改成:

  TempHandle := CreateFile(PChar(FDirectory), GENERIC_READ,
                            FILE_SHARE_READ or FILE_SHARE_WRITE or FILE_SHARE_DELETE,
                            nil, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS
                            or FILE_FLAG_OVERLAPPED, 0);

我们的修改今晚将提交CVS。




Welcome to CnPack Forum (http://bbs.cnpack.org/) Powered by Discuz! 5.0.0