2016-08-01 6 views
0

Ich habe eine Outlook-Add-in in Entwicklung, die Mail-Eigenschaften aus Outlook liest und auf einer Winform anzeigt.Outlook 365 vs Professional [save mailitem] Codierung Probleme

Ich baute den Ausblick auf eine Umgebung mit Outlook Professional 2013. Alle Funktionalitäten sind gut. Eigenschaften wie, Sendername, von, bis etc..getables angezeigt in einer Winform.

So greife ich auf die Eigenschaften einer Mail zu.

Outlook.MailItem mail; 
mail.Sender.Name; 

Wenn ich jetzt die Addin auf eine Umgebung mit dem gleichen System locale nehme aber unterschiedliche Aussichten (Outlook 365)

Ich erlebe Probleme Dekodierung, wenn einige bestimmten E-Mails zu lesen versuchen. So zum Beispiel, wenn ich eine E-Mail vom Absender am Zugriff auf: Adèle

Outlook.MailItem mail; 
mail.Sender.Name; // ---> This returns Ad?le 

Die E-Mail hat eine UTF-8-Codierung, wenn ich mit outlook spy geprüft. Die PC-Ländereinstellungen sind identisch.

Eine merkwürdige Sache ist, kopierte ich die Post von der Aussicht 365 Umgebung zu der anderen (Outlook Professional) und habe das Problem, aber wenn ich die Mail kopieren und aus der Outlook Professional-Umgebung in Outlook 365 importieren, funktioniert es korrekt. Also denke ich, dass das mit der Art und Weise zu tun hat, wie Outlook 365 seine Objekte speichert oder repräsentiert? Wie kann ich dieses Problem angehen? Ist es an meinem Ende fixierbar?

+0

Können Sie die genauen Versionsnummern Ihrer Outlook-Installationen überprüfen? Stellen Sie auch sicher, dass Sie identische Einstellungen unter * Optionen> Erweitert> Internationale Optionen * haben (ich nehme an, Sie haben bereits sichergestellt, dass Sie auf beiden Systemen auf dieselbe Nachricht von demselben Absender zugreifen) –

+0

@DirkVollmar Wird meine Ergebnisse 2moro präsentieren, wenn ich bin Das System, Danke :) – Undisputed007

Antwort

0

Das Outlook-Objektmodell gibt (wie alle IDispatch-freundlichen COM-Bibliotheken) Zeichenfolgen in der UTF-16-Codierung (2 Byte) zurück.

Stellen Sie sicher, dass Sie Zeichenfolgen so anzeigen, dass Zeichenfolgen nicht in eine einzelne Bytecodierung konvertiert werden.

Sehen Sie das gleiche Problem in OutlookSpy?

+0

Outlook Spion zeigt die Daten richtig :) Was macht es anders? Muss ich irgendwelche Conversions oder andere Schritte als den direkten Zugriff auf die Objekteigenschaft mailitem durchführen, wie beschrieben? Danke – Undisputed007

+0

Sie müssen Ihren Code von dem Moment, an dem Sie die Eigenschaft lesen, bis zu dem Moment, in dem er angezeigt wird, anzeigen. Was zeigt MessageBox.Show (mail.Sender.Name) an? –

Verwandte Themen