2016-04-02 26 views
0

Şu senaryoyu kullanıyorum: Programlı olarak bir e-posta oluşturması (bazı verileri içeri doldurun) olması gereken küçük bir WPF uygulaması (bir prototip, kavram kanıtı) ve bu e-postanın izini sürün daha sonra cevaplandı (konuşma izleme). Sohbet numarası öğe gönderilinceye kadar mevcut değildir.Outlook Interop, EntryId değişikliğinin nasıl izlenir

Karşılaştığım sorun, öğe oluşturulduğunda ve ilk olarak kaydedildiğinde - bir EntryId öğesinin, ancak öğe gönderildiğinde, başka bir klasöre taşınır (ve birden fazla hesap varsa, klasörün gönderilebilmesi durumunda) OlDefaultSent klasöründen farklı olarak), bir Exchange hesabının başka bir klasörüne taşınırken, EntryId değiştirilir, dolayısıyla bir parçasını kaybediyorum.

Soru: - Farklı bir klasöre taşınırken yarattığım öğeyi nasıl izleyebilirim (EntryID de değişir)?

İkinci soru burada olabilir - EntryId değişikliği gerçekleştiğinde uygulamam kapatılırsa öğemi nasıl bulabilirim?

cevap

0

PR_SEARCH_KEY MAPI özelliğini (DASL adı http://schemas.microsoft.com/mapi/proptag/0x300B0102) izleyebilirsiniz - ileti klasörler arasında taşınırken değişmez. MailItem.PropertyAccessor.GetProperty kullanarak özelliği alabilirsiniz, ancak Outlook Nesne Modeli, ikili özellikler üzerinde (Items.Find) arama yapmanıza izin vermez, bunun için Genişletilmiş MAPI (C++ veya Delphi) veya Redemption gerekir.

+0

Merhaba, cevabınız için teşekkürler. Bu özelliği izlemeyi denedim ve şu an MailItem.Save() 'i aradıktan sonra arama anahtarının "6E9BB ..." (onaltılık sayı) gibi bir şey olduğunu, ancak e-posta gönderildiğinde ve gönderilen öğeler klasörüne taşındığında görebiliyorum , Içindeki tüm posta öğelerini inceliyorum ve arama anahtarları "65066550 .." (ondalık sayı) gibi farklı. Çözümünüzde bir şey özlüyor muyum? – DarkDeny

+0

ve arama anahtarının uzunluğu farklıdır, göndermeden önce 31 karakterdir ve daha sonra gönderilen öğeler klasör uzunluğu 54 karakterdir, eğer bu size herhangi bir ipucu verirse ... – DarkDeny

+0

Bu mülke nasıl erişirsiniz? OutlookSpy ile öğeye baktınız mı (IMessage)? Bu özelliği hiçbir zaman 16 bitlik uzunlukta bir şey olarak görmedim. –