下载电子邮件附件时使用 C# 中的 Microsoft Security Essentials
Posted
技术标签:
【中文标题】下载电子邮件附件时使用 C# 中的 Microsoft Security Essentials【英文标题】:Use Microsoft Security Essentials in C# when downloading email attachment 【发布时间】:2012-11-09 13:38:55 【问题描述】:我正在制作一个简单的程序来使用 VS2010 从 pop3 服务器获取电子邮件。 可能会使用开源 OpenPOP 来完成其中的一些。 然后它应该将电子邮件和附件保存在 MS SQL 数据库中。
但问题是,虽然附件很容易从邮件服务器下载,但有没有办法扫描附件? 我工作的这家小公司只使用 Microsoft 安全必需品。
用谷歌搜索过,但似乎找不到任何关于这件事的信息。
【问题讨论】:
检查是否可以让您的防病毒应用程序通过命令行参数扫描文件。使用类似Process.Start(..)
的命令行选项
【参考方案1】:
你可以使用:
"%ProgramFiles%\Microsoft Security Client\MpCmdRun.exe" -Scan -ScanType 3 -File "<Path>"
并检查返回码。
附加信息:
-Scan [-ScanType value]
0 Default, according to your configuration
1 Quick scan
2 Full system scan
3 File and directory custom scan
[-File <path>]
Indicates the file or directory to be scanned, only valid for
custom scan.
[-DisableRemediation]
This option is valid only for custom scan.
When specified:
- File exclusions are ignored.
- Archive files are scanned.
- Actions are not applied after detection.
- Event log entries are not written after detection.
- Detections from the custom scan are not displayed in the user
interface.
Return code is
0 if no malware is found or malware is successfully remediated and no
additional user action is required
2 if malware is found and not remediated or additional user action is
required to complete remediation or there is error in scanning.
Please check History for more information.
【讨论】:
嗨@Paolo 我没有收到整数格式的结果。接收结果“扫描 xyz.pdf 没有威胁”。请帮我弄清楚我的代码有什么问题。 C# 代码: var args = "-Scan -ScanType 3 -Fileprocess.ExitCode
吗? ***.com/a/1585375/63011如果此解决方案适合您,请随时使用实际代码 sn-p 更新答案
谢谢@Paolo,它正在工作。我得到了 ExitCode 值。是否有可能获得除 0 或 2 之外的退出代码?是否有任何参考文档可以获取退出代码值和详细信息?以上是关于下载电子邮件附件时使用 C# 中的 Microsoft Security Essentials的主要内容,如果未能解决你的问题,请参考以下文章
优化C#小程序集成实现python定时段批量下载电子邮箱附件的bug排除