最近写一个程序需要监控一个文件夹下是否有文件,如果有,则自动打开进行处理。有两种情况:
1、用户从别处复制文件到此文件夹;
2、其他软件输出(或保存)文件到此文件夹;
第一种情况好处理。后一种情况就比较麻烦了,会出现其他软件正在写文件还未结束,本软件就开始对这个文件进行打开和处理了,此时就会出现错误。google了一阵,试了n种方法,终于....
try:
Handle = win32file.CreateFile( self.detcetAutoPltDirList[0],
GENERIC_READ,
FILE_SHARE_READ,
pywintypes.SECURITY_ATTRIBUTES(),
OPEN_EXISTING,FILE_FLAG_BACKUP_SEMANTICS,0)
except:
win32file.CloseHandle(Handle)
pass#print 'error'#异常,说明有其他程序正在写文件,还未结束
else:
#print 'ok'
#正常,说明没有其他程序在写此文件,可以打开文件,进行后续处理
.......................
文章评论(0条评论)
登录后参与讨论