因为你允许共享了改为
HANDLE hFile=::CreateFile(pthread.sourcefilename,GENERIC_READ,
                    FILE_SHARE_DELETE,NULL,OPEN_EXISTING,
FILE_FLAG_SEQUENTIAL_SCAN,NULL);
就不能用记事本打开了。

解决方案 »

  1.   

    请使用TRACE命令检查传递过来的pthread.sourcefilename:TRACE ("filename is [%s]\n",pthread.sourcefilename) ;这段程序是没有问题的,除非文件路径存在问题:)错误20说明: " The system cannot find the device specified.  "
      

  2.   

    xiaoxiaohan(萧晓寒) 
    是我打不开
    记事本可以
      

  3.   

    另一个程序正在使用此文件,进程无法访问
    摘自,Error Lookup
      

  4.   

    你的代码在其他程序已经用读写权限打开该文件的情况下会失败,应为你用FILE_SHARE_READ
    改为FILE_SHARE_READ|FILE_SHARE_WRITE则可以成功
      

  5.   

    HANDLE hFile=::CreateFile(pthread.sourcefilename,GENERIC_READ,
                        FILE_SHARE_READ¦FILE_SHARE_WRITE,NULL,OPEN_EXISTING,
    FILE_FLAG_SEQUENTIAL_SCAN,NULL);
      

  6.   

    xiaoxiaohan(萧晓寒),lhj(努力加油)
    我试了还是不对,是否和NTFS有关,我用的XP