我有3个数据文件:
我可以访问Outlook数据文件收件箱(它总是空的,我不知道如何自动从我的google和yahoo帐户移动到我的Outlook数据文件) 这段代码:
Outlook.MAPIFolder inBox = (Outlook.MAPIFolder)this.Application.
ActiveExplorer().Session.GetDefaultFolder
(Outlook.OlDefaultFolders.olFolderInbox);
我有两个问题:
我已经尝试过这个函数来返回我的MAPIFolder:
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;
}
但它没有用。请帮帮我..
答案 0 :(得分:0)
我不确定我理解你的第一个问题,你想将所有数据文件加入主要的Outlook数据文件吗?
关于第二个问题,Outlook数据文件由API中的商店表示,如果您在Session对象上调用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
}
有关详细信息,请参阅文档:
http://msdn.microsoft.com/en-us/library/office/bb176405%28v=office.12%29.aspx