2012-10-10 10 views
7

Po raz pierwszy używam platformy .NET do utworzenia dodatku dla poziomu aplikacji dla programu Outlook. Korzystając z samouczka, zapisałem kod i udało się go zbudować, ale nie udało mi się debugować kodu. Podczas debugowania pojawi się komunikat:Nie można debugować dodatku poziomu aplikacji dla programu Outlook

Nie można uruchomić lub debugować tego projektu, ponieważ wymagana wersja aplikacji firmy Microsoft nie jest zainstalowana.

Używam Visual Studio 2010 i MS Office 2007. W celu debugowania kodu, co mam zrobić? Czy mogę dokonać jakiejkolwiek zmiany w kodzie, aby móc ją debugować.

oto kod

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 
    } 
} 

Odpowiedz

18

Kwestia nie jest Twój kod - jest to błąd konfiguracji z pliku projektu i która wersja MS Office został zainstalowany. Zobacz 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 

Dla MS Office 2007, plik projektu DebugInfoExeName powinno być:

DebugInfoExeName = "# Software \ Microsoft \ Office \ 12.0 \ Outlook \ installroot \ ścieżka # outlook.exe"

+1

W przypadku pakietu MS Office 2016 numer wersji to "16.0". –

Powiązane problemy