![](/img/trans.png)
[英]C# Outlook 2007 - How do I access attachment contents directly from my addin?
[英]How do I save attachment from Outlook using C#?
C# 新手并尝试从 Python 转换。 我用 Python 编写了代码,它可以浏览我的电子邮件并保存某些邮件的附件。 现在尝试在 C# 中执行此操作,但遇到了一些问题。
我的第一个尝试是添加引用,然后勾选 MS Outlook 16.0 对象库,然后运行以下命令:
using System;
using Outlook = Microsoft.Office.Interop.Outlook;
namespace SaveEmail
{
internal class Program
{
private static void Main(string[] args)
{
try
{
Outlook.Application oApp = new Outlook.Application();
}
catch (Exception e)
{
Console.WriteLine($"Exception : {e}");
}
}
}
}
但即使是这个简单的 init 也会失败:
未处理的异常。 System.IO.FileNotFoundException: 无法加载文件或程序集 'office,版本 = 15.0.0.0,文化 = 中性,
我做了一些挖掘,似乎 Outlook 16.0 参考实际上指的是 OFFICE 2019。但在我们公司内部,我们运行的是 OFFICE 365。
鉴于我使用的是桌面版 Outlook (365),如何浏览我的邮箱并将附件保存在特定电子邮件中?
解决我的问题的两个步骤:
首先,我必须创建一个新的 .NET FRAMEWORK 项目(而不是 CORE)
其次,下面的代码用于让我继续:
Outlook.Application outlookApp = null;
// Check whether there is an Outlook process running.
if (Process.GetProcessesByName("OUTLOOK").Count() > 0)
{
// If so, use the GetActiveObject method to obtain the process and cast it to an Application object.
outlookApp = Marshal.GetActiveObject("Outlook.Application") as Outlook.Application;
}
else
{
// If not, create a new instance of Outlook and sign in to the default profile.
outlookApp = new Outlook.Application();
Outlook.NameSpace nameSpace = outlookApp.GetNamespace("MAPI");
nameSpace.Logon("", "", Missing.Value, Missing.Value);
nameSpace = null;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.