Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Maitems in List(of T)

Mitglied: ahstax

ahstax (Level 2) - Jetzt verbinden

29.11.2013 um 09:41 Uhr, 2487 Aufrufe, 10 Kommentare, 5 Danke

Hallo,

Ich würde gerne E-Mails, die in ein OL-Exchange-Postfach eingehen, in einer List(of T) ablegen, um sie dann später daraus zur Weiterbearbeitung zu entnehmen.
Die Variable "lstMailItemsReceivedLive" ist definiert, die Überwachung des Postfachs funktioniert:

Alt 1:
01.
Public lstMailItemsReceivedLive As List(Of Microsoft.Office.Interop.Outlook.Items)
Alt 2:
01.
Public lstMailItemsReceivedLive As List(Of Object)
01.
Public Sub olInboxItems_ItemAdd(ByVal Item As Object) Handles olInboxItems.ItemAdd
02.
   lstMailItemsReceivedLive.Add(Item)
03.
End Sub
Ich erhalte folgende Fehlermeldungen:
Alt 1:
"Das COM-Objekt des Typs "System.__ComObject" kann nicht in den Schnittstellentyp "Microsoft.Office.Interop.Outlook.Items" umgewandelt werden. Dieser Vorgang konnte nicht durchgeführt werden, da der QueryInterface-Aufruf an die COM-Komponente für die Schnittstelle mit der IID "{00063041-0000-0000-C000-000000000046}" aufgrund des folgenden Fehlers nicht durchgeführt werden konnte: Schnittstelle nicht unterstützt (Ausnahme von HRESULT: 0x80004002 (E_NOINTERFACE))."

Alt 2:
"Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt."

Kann mir jemand sagen, was ich wo wie zu ändern habe?

Neugierige Grüße,
Andreas
Mitglied: colinardo
29.11.2013, aktualisiert um 11:15 Uhr
Hallo Andreas,
das sollte problemlos gehen...
01.
Public lstMailItemsReceivedLive As new List(Of Microsoft.Office.Interop.Outlook.MailItem)
du solltest aber noch zusätzlich prüfen ob das übergebene Objekt im ItemAdd-Event tatsächlich ein MailItem ist indem du die Klasse des Objekts überpüfst.
01.
Public Sub olInboxItems_ItemAdd(ByVal Item As Object) Handles olInboxItems.ItemAdd
02.
  If Item.Class = Microsoft.Office.Interop.Outlook.OlObjectClass.olMail Then
03.
     lstMailItemsReceivedLive.Add(Item)
04.
  End if
05.
End Sub
Wenn das obige bei dir nicht geht, dann hast du anstatt des .NET Assemblies von Outlook, die COM-Variante als Referenz eingebunden.

Grüße Uwe
Bitte warten ..
Mitglied: ahstax
29.11.2013, aktualisiert um 11:57 Uhr
Hallo Uwe,

in der Tat (Du hast ne Kristall-Kugel...?) ist die COM-Variante eingebunden...
Wo bekomme ich die .NET-Assemblies von Outlook (Office, Word...) her, wenn diese nicht in Verweise --> Hinzufügen --> .NET gelistet sind?

Könnte man das "Problem" auch irgendwie mit der COM-Variante lösen?

Grüße,
Andreas
Bitte warten ..
Mitglied: ahstax
29.11.2013 um 12:23 Uhr
Kann es sein, dass die DLLs in

Microsoft Visual Studio 2010
Version 10.0.30319.1 RTMRel
Microsoft .NET Framework
Version 4.5.50938 RTMRel

Installierte Version: VB Express

Microsoft Visual Basic 2010 01012-169-2510015-70173
Microsoft Visual Basic 2010

nicht verwendet werden dürfen bzw importiert werden können?
Bitte warten ..
Mitglied: colinardo
29.11.2013 um 12:25 Uhr
Yip, mit den Express Editionen darfst du keine Office-Anwendungen programmieren...
Bitte warten ..
Mitglied: ahstax
29.11.2013 um 12:26 Uhr
Ein Ärgernis...

Komme ich also leider nochmals zurück zu meiner Frage:
Könnte man das "Problem" auch irgendwie mit der COM-Variante lösen?
Bitte warten ..
Mitglied: colinardo
29.11.2013, aktualisiert um 12:35 Uhr
also bei mir geht's so wie ich es oben beschrieben habe auch mit der COM-Variante (getestet mit Visual Studio 2010 Professional).
Du hast die Listen nicht mit New erzeugt, deshalb bekommst du den Fehler :
"Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt."
Und auch die Objekttypen der Liste stimmen nicht.
Bitte warten ..
Mitglied: ahstax
29.11.2013 um 12:34 Uhr
Schreibe ich dann also einfach statt

01.
Public lstMailItemsReceivedLive As List(Of Microsoft.Office.Interop.Outlook.Items)
01.
Public lstMailItemsReceivedLive As New List(Of Microsoft.Office.Interop.Outlook.Items)
Bitte warten ..
Mitglied: colinardo
29.11.2013, aktualisiert um 13:24 Uhr
lese doch mal bitte meinen ersten Post richtig:
01.
Public lstMailItemsReceivedLive As new List(Of Microsoft.Office.Interop.Outlook.MailItem)
Das Objekt in der Liste ist immer als Objekt-Typ in der Einzahl zu sehen nicht in der Mehrzahl. Du übergibst ja nicht eine ganze Liste an Mails an die Liste, sondern nur eine Mail auf einmal.
Bitte warten ..
Mitglied: ahstax
29.11.2013 um 12:40 Uhr
Verzeihung bitte, ich hatte das "Mail"-Item und "New" beim Lesen übersehen.

So funktioniert es!

Danke für Deine Hilfe!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
TODO List in ( Batch )
gelöst Frage von clragonBatch & Shell4 Kommentare

Hallo Liebe Forum-Nutzer Ich habe heute versucht, mir eine Batch zu schreiben die Notizen anzeigt, aka eine Todo Liste ...

Windows 7
Win7 firewall list von
Frage von AtoAtoWindows 77 Kommentare

hallo in Win7 kann ich mit dem Befehl netsh advfirewall firewall show rule status=enabled name=all zeige alle Rules, die ...

Exchange Server
Fehler 553 validrcptto list Exchange
gelöst Frage von zeroblue2005Exchange Server5 Kommentare

Hallo Zusammen, ein Benutzer meldete mir diesen Fehler eine T-Online.de Absender, der folgende Fehlermeldung zurück erhält: The mail system ...

Windows 10
Jump List geändert ohne Erfolg
Frage von ErbsenzaehlerWindows 10

Hallo, bin neu hier - habt Nachsicht und schon mal im Voraus danke für Eure Hilfe. Ich möchte die ...

Neue Wissensbeiträge
Windows 10

Windows 10 - Programme laufen schneller, wenn Sie mit Administratorrechten ausgeführt werden !

Erfahrungsbericht von 1Werner1 vor 8 StundenWindows 106 Kommentare

Moin, das wollte ich erst nicht glauben, aber es ist so. Wenn Ihr ein Programm mit Administratorrechten unter Windows ...

Sicherheits-Tools
Putty hat heftige Bugs korrigiert!
Information von Lochkartenstanzer vor 1 TagSicherheits-Tools5 Kommentare

Moin, Wie man aus herauslesen kann, sind in den Versionen vor 0.71 gravierende Bugs, die es angeraten erscheinen lassen, ...

Off Topic
Sachen die die Welt nicht braucht - Platz 1
Tipp von brammer vor 4 TagenOff Topic21 Kommentare

Hallo, ich habs als Tipp angelegt als Erfahrungsbericht nein Danke brammer

Humor (lol)
Spirit of Health-Kongress in Berlin
Information von AnkhMorpork vor 4 TagenHumor (lol)6 Kommentare

tgif! Beim dritten Spirit of Health-Kongress trafen sich am Wochenende Alternativmediziner und Naturheilkundler im Maritim Hotel Berlin, um sich ...

Heiß diskutierte Inhalte
Windows Server
Eingeschränkte Gruppen - Spezielle Benutzergruppe hinzufügen
Frage von killtecWindows Server17 Kommentare

Hallo, ich möchte gerne folgendes Realisieren: Ich habe bei mir Eingeschränkte Gruppen via GPO aktiv und möchte nun der ...

Microsoft Office
Videodateien auf Windows Server 2008 R2 öffnen schlägt fehl
Frage von SchroediMicrosoft Office13 Kommentare

Hallo zusammen, wir haben das Problem das embedded Videos in PowerPoint (O365) auf unserer Citrix Farm (6.5) nicht abgespielt ...

Hardware
Empfehlung zu neuen Desktop Pcs innerhalb KMU
Frage von Leo-leHardware13 Kommentare

Hallo zusammen, vielleicht könnt Ihr, anhand Eurer Erfahrung, mir einen Tipp zur Bestellung neuer Desktop Pcs für unsere User ...

DNS
Größere DNS Probleme nach zweitem DC. Eigentlich sollte es auch dadurch besser werden
Frage von TeWutzDNS13 Kommentare

Hallo zusammen, nachdem ich letzte Woche erfolgreich einen zweiten DC ) an den Start gebracht habe melden sich weiterhin ...