1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
using System;
using System.Diagnostics;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using Outlook = Microsoft.Office.Interop.Outlook;
using System.Reflection;
namespace HandlinPstTheCoolWay
{
public class retrieveSender
{
private static Guid g;
private static void displaySenderPst(string pstFilePath, string pstName)
{
int nbEmails = 0;
Outlook.Application App = new Outlook.Application();
Outlook.NameSpace outlookNS = App.GetNamespace("MAPI");
outlookNS.Logon("", "", Missing.Value, Missing.Value);
//add .pst to default profile
outlookNS.AddStore(pstFilePath + "\\" + pstName + ".pst");
try
{
Outlook.MAPIFolder rootfolder = outlookNS.Stores[pstName].GetRootFolder();
Outlook.Folders subFolders = rootfolder.Folders;
foreach (Outlook.Folder daFolder in subFolders)
{
var fi = daFolder.Items;
Console.WriteLine("dafolder's name= " + daFolder.Name);
try
{
foreach (Outlook.MailItem email in fi)
{
string senderAddress = email.SenderEmailAddress;
nbEmails++;
if (senderAddress != null && senderAddress.Length > 3)
{
Console.WriteLine("le sender name " + senderAddress);//+ " le CC "+ CCAdress);
}
}
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
public static void laInterface(string pstFile, string pstName)
{
displaySenderPst(pstFile, pstName);
}
}
} |
Partager