I would like to use anti virus integration with my .net application when uploading files using the application. Has any anti virus API available for .Net?
5 Answers
I don't want to resurrect an old question, but 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 hope someone who stumbles on this question in the future benefits from my library!

- 1,146
- 1
- 10
- 22
-
I am getting this issue: No connection could be made because the target machine actively refused it 127.0.0.1:3310 – Systematix Infotech Aug 03 '15 at 06:45
-
1I responded to your question here: http://stackoverflow.com/a/31800465/139046. Mark it as the accepted answer if it helps you :). – Ryan Hoffman Aug 10 '15 at 16:11
Symantec offers Scan Engine as a way to integrate anti-virus into your .Net application. If this is for non-commercial (in house) software, and your company already uses Symantec, then this might be a good option for you as well. I can't speak for ClamAV or nClam as I have never personally used them.

- 980
- 1
- 10
- 31
Why not install the antivirus software on the receiving server? That way you could keep the definitions updated, which may not happen on the uploading client app.

- 9,266
- 3
- 27
- 36
-
The reason is antivirus software needs some time to detect and delete the file with virus. It is not a good way to use in file server. – maoyang Sep 16 '16 at 02:44
I use ClamWin on my Desktop, and it's built on the open-source Clam AntiVirus libraries: http://www.clamav.net/download/third-party-tools/3rdparty-library/
It looks like they have a couple of differing bindings for .NET:

- 1,064
- 11
- 13
I recommend you a nuget called anti-virus scanner, with that you can do it with ease https://www.nuget.org/packages/AntiVirusScanner/ This nuget basically calls microsoft windows defender apis.

- 163
- 1
- 8