Zugriff auf Outlook 2010 E-Mail-Ordner in C#

Arbeite ich an einem Outlook-Add-In, und vor kurzem umgestiegen auf C# aus Gründen der Vertrautheit (ich bin ein Java-Mensch am Herzen). An diesem Punkt, ich versuche einfach nur, um zu Durchlaufen und einen E-mail-Ordner und drucken Sie das Thema, dass jede Nachricht auf der Konsole, vor allem als ein Weg, um sicherzustellen, dass alles funktioniert gut so weit. Immer wenn ich es starten, jedoch erhalte ich die folgende Fehlermeldung:

Vorgang konnte nicht abgeschlossen werden. Ein oder mehrere Parameterwerte sind nicht gültig.

Exception-Text:

System.ArgumentException: der Vorgang Konnte nicht abgeschlossen. Ein oder mehrere Parameterwerte sind nicht gültig.
bei Microsoft.Office.Interop.Outlook.NameSpaceClass.GetFolderFromID(String EntryIDFolder, Objekt EntryIDStore)
bei OutlookAddIn2.ThisAddIn.ThisAddIn_Startup(Object sender, EventArgs e)
bei Microsoft.Office.Tools.AddInImpl.OnStartup()
bei Microsoft.Office.Tools.AddInImpl.AddInExtensionImpl.Microsoft.Office.Tools.EntryPoint.OnStartup()
bei Microsoft.Office.Tools.AddInBase.OnStartup()
bei OutlookAddIn2.ThisAddIn.FinishInitialization()
bei Microsoft.Office.Tools.AddInBase.Microsoft.Office.Tools.EntryPoint.FinishInitialization()
bei Microsoft.VisualStudio.Tools.Office.- Laufzeit.DomainCreator.ExecuteCustomization.ExecutePhase(ExecutionPhases executionPhases)
bei Microsoft.VisualStudio.Tools.Office.Runtime.DomainCreator.ExecuteCustomization.Microsoft.VisualStudio.Tools.Office.Runtime.Interop.IExecuteCustomization2.ExecuteEntryPoints()

Geladen Baugruppen:

Ich bin etwas verblüfft über diese, wie dies ist die präziseste Methode, empfohlen von Microsoft auf der MSDN-Website, um einen Benutzer einen Ordner auswählen. Ich habe meine Quelle, bitte lassen Sie mich wissen, wenn Sie irgendwelche Gedanken. Vielen Dank für die Zeit nehmen diesen Beitrag zu Lesen, und für Ihre Bereitschaft zu helfen!

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;

namespace OutlookAddIn2
{
    public partial class ThisAddIn
    {
        private void ThisAddIn_Startup(object sender, System.EventArgs e)
        {
            //Get application namespace and grab the original folder object
            Outlook.Folder pickFolder = (Outlook.Folder)Application.Session.PickFolder();

            //Outlook.Folder mrFolder = Application.Session.GetFolderFromID(pickFolder.EntryID, pickFolder.StoreID) as Outlook.Folder;

            foreach (Outlook.MailItem oMailItem in pickFolder.Items)
            {
                Console.WriteLine(oMailItem.Subject);
            }
        }

        private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
        {
        }

        #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
    }
}
  • Auch, sorry für die schlechte Formatierung, die auto-parser tut etwas schreckliches, um meinen code...
  • Das ist, was wir haben Robert Harvey für!
  • Sorry, wer ist das?
  • Der Kerl, formatiert deinen post 🙂
Schreibe einen Kommentar