摘要: Microsoft Outlook对象模型通常用于访问文件夹中的各种类型的项目。本文包含可用于使用Microsoft Visual C#引用Outlook项目和Outlook文件夹的方法、属性和对象的示例。NET。Outlook对象具有可以选择的枚举。展望。_ApplicationolApp=newOutlook.ApplicationClass();展望。_NameSpaceolNS=olApp.GetNamespace;Outlook.MAPIFolderoFolder=olNS.GetDefaultFolder;Console.Write;Folders对象可以使用Folders对象引用Outlook文件夹列表中的任何文件夹。您必须与Outlook文件夹列表中显示的文件夹大小写和名称完全匹配。此附加参数用于指定属于其他人的文件夹的名称。
Microsoft Outlook 对象模型通常用于访问文件夹中的各种类型的项目。本文包含可用于通过使用 Microsoft Visual C# .NET 来引用 Outlook 项目和 Outlook 文件夹的方法、属性和对象的示例。
本文包含下列主题及其相关示例:
引用现有的文件夹 GetDefaultFolder 方法Folders 对象Parent 属性GetSharedDefaultFolder 方法GetFolderFromID 方法 创建新文件夹和引用新文件夹 创建新项目和引用新项目 CreateItem 方法Items.Add 方法CreateItemFromTemplate 方法 引用现有的项目 Using Items(I) 方法Using Items("Subject") 方法Find 方法Restrict 方法GetItemFromID 方法 引用现有的文件夹
GetDefaultFolder 方法 默认文件夹是那些与接收传入邮件的“收件箱”处于同一级别的文件夹。 如果配置文件中有多个“收件箱”,则可以按 Ctrl+Shift+I 来选择默认“收件箱”。 默认文件夹是那些定期使用的文件夹,如“日历”文件夹、“联系人”文件夹和“任务”文件夹。 您可以使用 GetDefaultFolder 方法方便地引用这些文件夹。 GetDefaultFolders 方法采用一个用于定义您要引用的文件夹类型的参数。 Outlook 对象具有一个您可以选择的枚举。 此枚举是在 Outlook.OlDefaultFolders 枚举类型中定义的。 下面的示例代码将 oFolder 对象变量指定给默认的“收件箱”文件夹。
Outlook._Application olApp = new Outlook.ApplicationClass(); Outlook._NameSpace olNS = olApp.GetNamespace("MAPI");
Outlook.MAPIFolder oFolder = olNS.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox); Console.Write(oFolder.Name);
Folders 对象 可以使用 Folders 对象来引用 Outlook 文件夹列表中的任何文件夹。Folders 对象通常用于引用 Microsoft Exchange 文件夹或不是默认 Outlook 文件夹的其他任何文件夹。 下面的示例代码说明如何引用名为“My Public Folder”的公用文件夹。请注意,您通常是先从最顶端的文件夹开始,然后向下查找您必须引用的文件夹。另请注意,文件夹名称是区分大小写的。您必须使文件夹的大小写和名称与其在 Outlook 文件夹列表中的显示完全匹配。
// TODO: Add code here to start the application. Outlook._Application olApp = new Outlook.ApplicationClass(); Outlook._NameSpace olNS = olApp.GetNamespace("MAPI");Outlook._Folders oFolders; oFolders = olNS.Folders; Outlook.MAPIFolder oPublicFolder = oFolders.Item("Public Folders"); oFolders = oPublicFolder.Folders; Outlook.MAPIFolder oAllPFolder = oFolders.Item("All Public Folders"); oFolders = oAllPFolder.Folders; Outlook.MAPIFolder oMyFolder = oFolders.Item("My Public Folder"); Console.Write(oMyFolder.Name); Folders 对象 可以使用 Folders 对象来引用 Outlook 文件夹列表中的任何文件夹。Folders 对象通常用于引用 Microsoft Exchange 文件夹或不是默认 Outlook 文件夹的其他任何文件夹。 下面的示例代码说明如何引用名为“My Public Folder”的公用文件夹。请注意,您通常是先从最顶端的文件夹开始,然后向下查找您必须引用的文件夹。另请注意,文件夹名称是区分大小写的。您必须使文件夹的大小写和名称与其在 Outlook 文件夹列表中的显示完全匹配。
// TODO: Add code here to start the application. Outlook._Application olApp = new Outlook.ApplicationClass(); Outlook._NameSpace olNS = olApp.GetNamespace("MAPI");Outlook._Folders oFolders; oFolders = olNS.Folders; Outlook.MAPIFolder oPublicFolder = oFolders.Item("Public Folders"); oFolders = oPublicFolder.Folders; Outlook.MAPIFolder oAllPFolder = oFolders.Item("All Public Folders"); oFolders = oAllPFolder.Folders; Outlook.MAPIFolder oMyFolder = oFolders.Item("My Public Folder");
GetSharedDefaultFolder 方法 如果另一个人已授予您使用其某个默认文件夹的权限,则您可以使用此方法。您可以像使用 GetDefaultFolder 方法一样来使用 GetSharedDefaultFolder 方法,但必须另外指定一个参数。该附加参数用于指定属于其他人的文件夹的名称。该文件夹是您要引用的文件夹。下面的示例代码对其他人的名称进行解析,以验证该人的名称是否有效,并验证其名称是否可以用于 GetSharedDefaultFolder 方法。
GetSharedDefaultFolder: // TODO: Add code here to start the application. Outlook._Application olApp = new Outlook.ApplicationClass(); Outlook._NameSpace olNs = olApp.GetNamespace("MAPI"); Outlook.Recipient oRecip = olNs.CreateRecipient("Brian Baker"); oRecip.Resolve(); if (oRecip.Resolved) { Outlook.MAPIFolder oFolder = olNs.GetSharedDefaultFolder(oRecip,Outlook.OlDefaultFolders.olFolderCalendar); Console.Write(oFolder.Name); }
详细描述参考:http://support.microsoft.com/kb/310244/zh-cn