病毒扫描程序锁定和删除临时文件 - 处理它们的最佳方法是什么?

Ste*_*tze 6 c# antivirus locking temporary-files

我的应用程序处理来自不同来源的电子邮件,例如Outlook和IMAP邮箱.在解析它们之前,我将它们写入临时目录(将它们保留在内存中不是一个选项).在解析时,我可能正在写临时目录的附件(例如,如果它们太大而无法保留在内存中或用于全文提取).

但是在野外,有两件事情发生在一开始似乎很奇怪,但都可以追溯到病毒扫描程序的行为:

  • 我有时无法打开几毫秒前我自己写过的文件.它们显然被病毒扫描程序锁定,以确保它们是干净的.我得到一个例外.

  • 如果病毒扫描程序认为文件存在危险,则会在某个时间点将其删除.

为了解决这个问题,我已经写了再试一次,如果打开失败,或者如果存在的文件做一些检查的一些方法,但我无法在应用每个部分使用它们(第三方代码,例如过滤器) ,所以事情变得更好,但不是100%完美,因为这个原因,我的源代码看起来很难看.

你如何应对病毒扫描程序?

Joe*_*csy 1

加密写入您的文件。我认为你不需要任何太棘手或复杂的事情。还要加密或破坏文件名,因为病毒扫描程序也可能由此触发。