2011-06-02 14 views
6

Yerel bir diskte saklanan msg dosyalarının gövdesini almalı ve her birinin bazı bilgilerini ayıklamam gerekir, bunların formatı her zaman aynıdır sadece veri değişiklikleri , tavsiye lütfen. peşinYerel diskte saklanan Outlook msg dosyaları, delphi ile nasıl okunabilir

sayesinde Raul nedeniyle kendimi cevap kısıtlamaya herkese


sayesinde

, sadece sorumu altında benim çözüm yazacağım.

Bazı MS belgelerini kontrol ettim ve işte beklediğim gibi çalışıyorum.

procedure TForm1.displayOutlookMsg(aFileName: string); 
const 
olFormatHTML = 2; 
olFormatPlain = 1; 
olFormatRichText = 3 ; 
olFormatUnspecified = 0; 

var outlook: OleVariant; 
    outlookMsg, bodyMsg: variant; 
begin 

    try 
    Outlook := GetActiveOleObject('Outlook.Application'); 
    except 
    Outlook := CreateOleObject('Outlook.Application'); 
    end; 

    outlookMsg:= outlook.CreateItemFromTemplate(aFileName); 
    outlookMsg.bodyFormat := olFormatPlain; 

    bodyMsg:= outlookMsg.body; 

    Memo1.Lines.Add(VarToStr(bodyMsg)); 
    outlook:= unassigned; 

end; 
+1

Çok iyi basit bir çözüm +1, kodu bir yanıt gönderebilir ve kabul edebilirsiniz. – RRUZ

+0

Bunu bir cevap vermelisiniz, o zaman cevabı kabul etmelisiniz. Bu kabul edilmeyen cevaplarınızı azaltır ve genel StackOverflow kalitesini geliştirir: http://stackoverflow.com/search?q=user%3A548280+is%3Aanswer+hasaccepted%3Ano –

cevap

2

Scalabium'dan SMMsg deneyebilirsiniz.