// 大量新文件生成时,会出现个别文件创建了,但是不触发created的情况。
肯定触发了,但是函数来不及处理
在函数开头加上Thread.Sleep(500);// 触发created操作时,先在同目录下copy一个.bak的新文件
当外部程序创建文件后,created事件就触发了,但是往往写文件的操作还没结束,此时复制文件必然报告异常
方法同上,延时处理
也可以调用windows api查看文件是否被占用(超级的麻烦,而且很慢)
最好是创建文件的程序在写文件结束之前先设定readonly标志,写完了再设定为normal,你的程序可以不断的thread.sleep直到标志位改变后再拷贝