如何在outlook(c#)中访问我的yahoo或gmail帐户?
我有3个数据文件:如何在outlook(c#)中访问我的yahoo或gmail帐户?,c#,email,outlook,add-in,mapi,C#,Email,Outlook,Add In,Mapi,我有3个数据文件: Outlook数据文件(为空) Gmail数据文件(来自我的Gmail pop3) Yahoo数据文件(来自my Yahoo imap) 我可以使用访问Outlook数据文件收件箱(收件箱总是空的,我不知道如何自动从我的google和yahoo帐户移动到我的Outlook数据文件) 此代码: Outlook.MAPIFolder inBox = (Outlook.MAPIFolder)this.Application. ActiveExplorer().Sessio
Outlook.MAPIFolder inBox = (Outlook.MAPIFolder)this.Application.
ActiveExplorer().Session.GetDefaultFolder
(Outlook.OlDefaultFolders.olFolderInbox);
我有两个问题:
public Outlook.MAPIFolder GetInbox(string userName)
{
Outlook.Application oOutlook = new Outlook.Application();
Outlook.NameSpace oNs = oOutlook.GetNamespace("MAPI");
Outlook.Recipient oRep = oNs.CreateRecipient(userName);
Outlook.MAPIFolder inbox = oNs.GetSharedDefaultFolder(oRep, Outlook.OlDefaultFolders.olFolderInbox);
return inbox;
}
但它不起作用。请帮助我..我不确定是否理解您的第一个问题,是否要将所有数据文件合并到outlook主数据文件中 关于第二个问题,Outlook数据文件由API中的存储表示,如果您在会话对象上调用GetDefaultFolder,您将始终得到默认存储的默认文件夹(Outlook数据文件的收件箱) 您可以列出所有存储文件,并在其上使用GetDefaultFolder检索每个存储/数据文件的收件箱文件夹:
Outlook.Stores stores = this.Appliction.Session.Stores;
foreach( Store store in stores )
{
Outlook.Folder inboxOfStore = store.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
//Do stuff with your inbox folder.. Check store properties for infomation on which data file this store represents
}
有关更多信息,请参阅文档: