Announcement

Collapse
No announcement yet.

MS Outlook 11.0 Object Library verweis geht nicht

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • MS Outlook 11.0 Object Library verweis geht nicht

    Hallo,

    ich habe versucht ein Programm zu schreiben, wo ich über mein VB.NET Programm Kontakt in Outlook einfügen kann.
    Ich arbeite mit Visual Studio 2008 und MS Outlook 2003.

    Ich habe den Verweiß auf die Microsoft Outlook 11.0 Object Library eingestellt aber er erkennt meine Definitionen nicht.

    Fehlermeldungen :

    Der Typ "Outlook.Application" ist nicht definiert.
    Der Typ "Outlook.NameSpace" ist nicht definiert.
    Der Typ "Outlook.ContactItem" ist nicht definiert.

    mein Code :
    Code:
    Public Class Form1
    
        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            Dim oApp As Outlook.Application = New Outlook.Application()
            Dim oNS As Outlook.NameSpace = oApp.GetNameSpace("MAPI")
    
            Dim oCt As Outlook.ContactItem = oApp.CreateItem(Outlook.OlItemType.olContactItem)
            oCt.Display(True)
    
            oCt.Fullname = "Test1"
            oCt.Title = "Test2"
    
            oCt.Save()
    
            oCt.Display(True)
    
            oApp = Nothing
            oNS = Nothing
            oCt = Nothing
    
        End Sub
    End Class
    Ich hoffe ihr könnt mir meinen Fehler verraten und mir weiter helfen.
    Gruß

  • #2
    Hallo,

    probiers mal damit:
    Code:
    Private Shared Sub Main(ByVal args As String())
        Dim app As Outlook._Application = New Outlook.Application()
        Dim contactsFoler As Outlook.MAPIFolder = DirectCast(app.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderContacts), Outlook.MAPIFolder)
        Dim newContact As Outlook.ContactItem = DirectCast(contactsFoler.Items.Add(Outlook.OlItemType.olContactItem), Outlook.ContactItem)
        newContact.FirstName = "Günther"
        newContact.LastName = "Foidl"
        newContact.Email1Address = "[email protected]"
        newContact.Save()
    End Sub
    Hinweis: Code automatisch von C# übersetzt, daher keine Garantier dass er funktioniert.

    C#-Code (funktioniert)
    Code:
    static void Main(string[] args)
    {
    	Outlook._Application app = new Outlook.Application();
    	Outlook.MAPIFolder contactsFoler =
    		(Outlook.MAPIFolder)app.Session.GetDefaultFolder(
    		Outlook.OlDefaultFolders.olFolderContacts);
    	Outlook.ContactItem newContact =
    		(Outlook.ContactItem)contactsFoler.Items.Add(
    		Outlook.OlItemType.olContactItem);
    	newContact.FirstName = "Günther";
    	newContact.LastName = "Foidl";
    	newContact.Email1Address = "[email protected]";
    	newContact.Save();
    }
    mfG Gü
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

    Comment


    • #3
      Bei mir zeigt er auch gleich, wenn ich den Core einfüge den Fehler, dass die Variablen nicht definiert sind.

      Außerdem kommt dieser Fehler :

      Visual Studio kann das Debuging nicht starten, da das Debugziel "C:\Dokumente und Einstellungen\Benutzer\Lokale Einstellungen\Anwendungsdaten\Temporary Projects\WindowsApplication1\bin\Debug\WindowsAppl ication1.exe" nicht vorhanden ist. Erstellen sie das Projekt, und wiederholen sie den Vorgang, oder legen Sie die OutputPath- und die AssemblyName-Eigenschaft auf den richtigen Speicheroft für die Zielassembly fest.

      // Edit : Der Fehler mit dem Debuging soll laut Google am antivierenprogramm liegen.
      Werde das zuhause mal testen.
      Ich hoffe, dass er dann auch die Verweise übernimmt :/
      Zuletzt editiert von fox.fun; 23.09.2008, 11:11.

      Comment


      • #4
        Hallo,

        der Code funktioniert schon (hab ich getestet - Outlook 2003, WinXP), vermutlich hast du beim Reinkopieren was falsch gemacht.

        Unter http://www.file-upload.net/download-...ntakt.zip.html ein Demo-Projekt wies geht.

        mfG Gü
        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

        Comment


        • #5
          vielen dank, habe es gerade ausprobiert und es geht.

          fraglich nur, wieso meins nicht funktioniert, habe den code aus dem internet von microsoft direkt.

          werde mir deins nochmal genauer angucken und vielleicht finde ich ja den fehler.

          hast du den verweis auch gemacht auf die library ?

          Comment


          • #6
            Hallo,

            den Verweis hab ich über "Verweis hinzufügen | COM | Microsoft Outlook 11|" hinzugefügt. Im Projekt sind eh die Verweise sichtbar.

            mfG Gü
            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

            Comment


            • #7
              problem gelöst, habe nach stundenlangem suchen in VB.NET die Lösung gefunden.

              ich muss vor " outlook.application " einfach nur " Microsoft.Office.Interop. " schreiben und es geht.

              wieso es bei anderen ohne geht, bleibt für mich ein rätsel.. vielen dank für die hilfe

              Comment


              • #8
                Das könnte daran liegen dass du den Namespace Mircrosoft.Interop nicht eingebunden hast (Imports...).

                Wenns dies nicht ist weiß ich es auch nicht - Hauptsache es geht jetzt
                "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

                Comment

                Working...
                X