Как читать и анализировать (тема, тело, вложения ...) электронное письмо из Outlook (добавить в C#)
Для чтения и анализа (тема, тело, вложения ...) электронной почты из Outlook (добавить в C#) я попытался написать эту функцию :
using Outlook = Microsoft.Office.Interop.Outlook; public void readEmail() { try { Outlook.Application myApp = new Outlook.ApplicationClass(); Outlook.NameSpace mapiNameSpace = myApp.GetNamespace("MAPI"); Outlook.MAPIFolder myInbox = mapiNameSpace.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox); MessageBox.Show(myInbox.Items.Count + ""); //Read all the email one by one //for (int i = myInbox.Items.Count; i >= (myInbox.Items.Count-1); i--) //{ //String strSubject = ((Outlook.MailItem)myInbox.Items[i]).Subject; // Sender Email //string senderEmailid = ((Outlook.MailItem)myInbox.Items[i]).SenderEmailAddress; //string CreationTime=(( //Outlook.MailItem)myInbox.Items[i]).CreationTime.ToString(); //string strEmailBody=(( Outlook.MailItem)myInbox.Items[i]).Body; //string strEmailSenderName=(( Outlook.MailItem)myInbox.Items[i]).SenderName; //} } catch(Exception ex) { MessageBox.Show(ex.Message); } }
но "мой почтовый ящик.Предметы.Count" равен 0, и если я попытаюсь отобразить одну из переменных (например, strEmailBody), она выдаст исключение : индекс массива выходит за пределы привязки.
Кто-нибудь может мне помочь, пожалуйста ???
jo.him1988
как вы получаете доступ к своей учетной записи outlook вы забыли упомянуть об этом
mapiNameSpace.Входа(нуль, нуль, ложное, ложное);
mapiNameSpace.Логон("ваш Outlook почты", "пароль", отсутствует.Значение, true);
вот код скрипта :-