这是我第一次使用.NET为Outlook创建应用程序级外接程序。通过使用教程,我写下了一些代码并且它已成功构建,但我无法调试代码。调试警告框时显示:
您无法运行或调试此项目,因为未安装所需的Microsoft应用程序版本。
我正在使用 Visual Studio 2010 和 MS Office 2007 。为了调试代码,我该怎么办?我可以对代码进行任何更改,以便我可以对其进行调试。
这是代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Outlook = Microsoft.Office.Interop.Outlook;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Interop.Outlook;
namespace OutlookAddIn1
{
public partial class ThisAddIn
{
Outlook.Inspectors inspectors;
event InspectorsEvents_NewInspectorEventHandler NewInspector;
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
inspectors = this.Application.Inspectors;
inspectors.NewInspector +=
new Microsoft.Office.Interop.Outlook.InspectorsEvents_NewInspectorEventHandler(Inspectors_NewInspector);
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
void Inspectors_NewInspector(Microsoft.Office.Interop.Outlook.Inspector Inspector)
{
Outlook.MailItem mailItem = Inspector.CurrentItem as Outlook.MailItem;
if (mailItem != null)
{
if (mailItem.EntryID == null)
{
mailItem.Subject = "This text was added by using code";
mailItem.Body = "This text was added by using code";
}
}
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
答案 0 :(得分:18)
问题不在于您的代码 - 它是您的项目文件的错误配置以及您安装的MS Office版本。请参阅related SO post regarding editing DebugInfoExeName
in the csproj
to match the proper Office version。
Office Version | Version Number
---------------+-----------------
2007 | 12.0
2010 | 14.0
2013 | 15.0
2016 | 16.0
对于 MS Office 2007 ,您的项目文件DebugInfoExeName
应为:
DebugInfoExeName =“#Software \ Microsoft \ Office \ 12.0 \ Outlook \ InstallRoot \ Path#outlook.exe”