C# 使用C打开outlook模板文件#

C# 使用C打开outlook模板文件#,c#,outlook,C#,Outlook,我有一个小应用程序,需要能够打开已经创建的outlook模板文件。另一方面,我不能轻松打开一封空白的outlook电子邮件。然而,到目前为止我所尝试的一切似乎都不起作用 using Microsoft.Office.Interop.Outlook; using Outlook = Microsoft.Office.Interop.Outlook; using OutlookApp = Microsoft.Office.Interop.Outlook.Application; private v

我有一个小应用程序,需要能够打开已经创建的outlook模板文件。另一方面,我不能轻松打开一封空白的outlook电子邮件。然而,到目前为止我所尝试的一切似乎都不起作用

using Microsoft.Office.Interop.Outlook;
using Outlook = Microsoft.Office.Interop.Outlook;
using OutlookApp = Microsoft.Office.Interop.Outlook.Application;

private void CreateItemFromTemplate()
        {
            Outlook.Folder folder =
                Application.Session.GetDefaultFolder(
                Outlook.OlDefaultFolders.olFolderDrafts) as Outlook.Folder;
            Outlook.MailItem mail =
                Application.CreateItemFromTemplate(
                @"Forms\\RLA.oft", folder) as Outlook.MailItem;
            mail.Subject = "Congratulations";
            mail.Save();
        }
这直接来自MS站点,但我在Session和CreateItemFromTemplate下收到错误。我尝试过包括所有推荐的参考资料,但没有任何效果

这是我尝试过的另一个选择

           OutlookApp outlookApp = new OutlookApp();
          //MailItem mailItem = outlookApp.CreateItem(OlItemType.olMailItem);
            MailItem mailItem = outlookApp.CreateItemFromTemplate("\\Content\\RLW.oft", OlItemType.olMailItem);
上面的此选项将用于CreateItem对象,但不适用于CreateItemFromTemplate对象


C#打开模板不会这么难。任何帮助都将不胜感激

如果以后有人遇到这个问题,我就自己想出了答案。这条线就是问题所在

MailItem mailItem = outlookApp.CreateItemFromTemplate("\\Content\\RLW.oft", OlItemType.olMailItem);

VisualStudio实际上会在编写时告诉您何时将鼠标悬停在上面。参数“OlItemType.olMailItem”是它在其中查找的文件夹。如果你不使用这个参数,它将在给定的路径中查找。否则,它将无法正确打开

是否有错误,或者它只是返回
null
?我们无法打开“..\Content\RLW.oft”。可能该文件已打开,或者您没有打开该文件的权限。要检查您的权限,请右键单击该文件夹,然后单击“属性”。描述:执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了解有关错误的更多信息以及错误在代码中的起源。异常详细信息:System.IO.DirectoryNotFoundException:我们无法打开“..\Content\RLW.oft”。可能该文件已打开,或者您没有打开它的权限。这就是出现的错误。我遵循了这些指示。去了酒店。无法选择权限。另外,我有脚本,图片,其他文件不这样做,或需要许可。为什么会这样?异常消息中的父目录指示符(..)与传递给函数的根目录路径不一致。如果您将模板文件的绝对路径传递给它,它会工作吗?文件是否已打开?它是否已在Outlook中打开?它是否可以通过以前失败的程序尝试打开(即重新启动并重试)