/ / Modo "migliore" per ottenere un Outlook MailItem dal file .msg - c #, Outlook

Il modo "migliore" per ottenere un Outlook MailItem dal file .msg - c #, outlook

Per passare da un file .msg al relativo MailItem di Outlook ho trovato e provato questi due modi:

Outlook.Application oApp; // --> Outlook Application
Outlook.MailItem oItem; // --> Outlook MailItem
string file= @"C:PWSmyMail.msg";
oApp= (Outlook.Application)new Outlook.Application();

// way #1
oItem= (Outlook.MailItem)oApp.CreateItemFromTemplate(file);
// or way #2
oItem= (Outlook.MailItem)oApp.Session.OpenSharedItem(file);

Qual è la differenza tra questi due modi? Devo aprire .msg e quindi utilizzare MailItem risultante (per ottenere alcune proprietà come "SenderEmailAddress" o gli allegati di posta elettronica) ... cosa devo usare? Al momento sono gli stessi per me ...

risposte:

0 per risposta № 1

Il terzo modo è utilizzare il file .msg di esecuzione a livello di codice. In tal caso, dovrebbe essere aperta un'applicazione predefinita (Outlook). Per esempio:

 string file= @"C:PWSmyMail.msg";
Process.Run(file);

Tenere presente che non è possibile eseguire più istanze di Outlook. Pertanto, il messaggio verrà aperto nell'istanza esistente di Outlook (se presente).

Entrambi i metodi (n. 1 e n. 2) consentono di aprire il messaggio salvato in Outlook. Ma hanno differenze minori:

Il CreateItemFromTemplate metodo della classe Application crea un nuovo Elemento di Microsoft Outlook da un modello di Outlook (.oft) e restituisce il nuovo articolo. Mi piacerebbe anche attirare la vostra attenzione sul fatto che i nuovi oggetti si apriranno sempre in modalità di composizione, al contrario della modalità di lettura, indipendentemente dalla modalità in cui gli elementi sono stati salvati su disco.

Il OpenSharedItem metodo della classe Namespace apre un oggetto condiviso da un percorso o URL specificato. Vedere Procedura: importare elementi salvati utilizzando OpenSharedItem per maggiori informazioni.

Dipende da te quale modo scegliere in base alle informazioni sopra elencate ...