We don’t allow questions seeking recommendations for software libraries, tutorials, tools, books, or other off-site resources. You can edit the question so it can be answered with facts and citations.
Closed 9 years ago.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
我需要一个问题所询问的解决方案。我评估了很多东西并得出结论:确实没有一个好的 .NET 库可以实现这一点。所以我自己做了。
该库称为 nClam,它连接到 ClamAV 服务器。它是开源(Apache License 2.0)库,具有非常简单的 API。您可以在这里获取它:https://github.com/tekmaven/nClam。还有一个 nuget 包:nClam。我的博客上还有一些有关如何设置 ClamAV 服务器的说明,此处:http://architectryan.com/2011/05/19/nclam-a-dotnet-library-to-virus-scan/。
I was in need of a solution that the question was asking about. I evaluated a lot of things and came to the conclusion that there was really not one good .NET library for this. So I made my own.
The library is called nClam, and it connects to a ClamAV server. It is open-source (Apache License 2.0) library which has a very simple API. You can obtain it here: https://github.com/tekmaven/nClam. There is also a nuget package: nClam. I also have some instructions on how to set up the ClamAV server on my blog, here: http://architectryan.com/2011/05/19/nclam-a-dotnet-library-to-virus-scan/.
我不知道是否存在用于扫描内存数据的 API(我还没有找到),但您始终可以将二进制数据放入临时文件中,扫描该文件(通过调用在命令行中工作的外部程序)并在完成后将其删除。
I don't know if APIs exist for scanning in-memory data (I haven't found any), but you can always put your binary data into a temporary file, scan the file (by calling an external program working in command line) and delete it when it's done.
当然,Sophos 的 API (SAVI) 可以扫描任意内存缓冲区 - 您可以提供用于访问数据的回调,因此它可以是您可以访问的任何数据。
Certainly Sophos's API (SAVI) can scan arbitrary memory buffers - you can provide call-backs for accessing the data, so it can be any data you can access.