微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从构build脚本对文件进行病毒检查

我希望能够调用病毒检查作为构build过程的最后阶段(请不要质疑为什么开发机器会感染病毒,这只是一个腰带和大括号的方法,以避免获得病毒被客户起诉…)。 另外,我想select在一台机器上有AV,但closures自动文件系统保护(至less是build立目录)。

我想要的是使用任何AV系统扫描文件的通用方法。 我假设有一个Windows API来做到这一点,因为Windows检测到AV系统的存在,并且只要文件被下载,Firefox等浏览器就会调用病毒扫描。 那么他们使用的API是什么? 有Microsoft AntiVirus API,但似乎是特定于Office文档。 该方法是否涉及使用WMI ? (如果您可以从那里检测AV提供程序,那么您如何调用它来扫描文件?)

我知道我可以编写脚本来手动调用我知道要安装的防病毒扫描器,但作为一个智力练习,我更感兴趣的是知道像Firefox这样的应用程序是如何做的。

Golang – 在Windows上更改构build工作path

如何注册一个软件作为Windows 7防病毒软件?

缺less使用WMI ManagementObjectSearcher的指令或程序集引用?

病毒扫描器导致应用程序负载缓慢

Windows Defender防病毒API

避免数据文件中的防病毒错误肯定

使用C#在Windows上检测防病毒

Java – 是否有可能以编程方式确定Windows防病毒解决scheme是否是最新的?

防病毒和文件访问冲突:良好的编程习惯?

服务器端病毒扫描

那么,你可能想直接在Firefox源代码上看看nsDownloadScanner系统:

nsDownloadScanner.h

nsDownloadScanner.cpp

正如对这些文件评论所说:

Download scanner attempts to make use of one of two different virus scanning interfaces available on Windows - IOfficeAntiVirus (Windows 95/NT 4 and IE 5) and IAttachmentExecute (XPSP2 and up). The latter interface supports calling IOfficeAntiVirus internally,while also adding support for XPSP2+ ADS forks which define security related prompting on downloaded content.

这些接口上的文档可以在这里找到:

IAttachmentExecute

IOfficeAntiVirus

如果您的软件是开源的,并且符合MPL许可证(谢谢@MSalters),那么您也可以直接使用Firefox的代码,以免重蹈覆辙。

Firefox使用IAttachmentExecute API。 但是,您不想在构建脚本中使用它,因为它会添加备用流信息,告诉窗口在执行文件显示恼人的警告窗口。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐