C# 使用Microsoft outlook 14.0对象库处理所有outlook版本

C# 使用Microsoft outlook 14.0对象库处理所有outlook版本,c#,outlook,compatibility,C#,Outlook,Compatibility,我安装了Microsoft Outlook 14.0对象库,然后 我用C语言编程 我的应用程序引用Outlook 2010主互操作程序集。(Microsoft Outlook 14.0对象库) 我可以将任何Outlook版本与此PIA一起使用吗?(展望2000、展望2003、展望2007、展望2010) 在这种情况下,我是否需要修改我的程序以引用旧的PIA?“排序” 不能在任何PIA调用中使用任何版本的Outlook。但是,可以使用特定底层Outlook COM支持的PIA调用。PIA只是Out

我安装了Microsoft Outlook 14.0对象库,然后 我用C语言编程

我的应用程序引用Outlook 2010主互操作程序集。(Microsoft Outlook 14.0对象库)

我可以将任何Outlook版本与此PIA一起使用吗?(展望2000、展望2003、展望2007、展望2010)

在这种情况下,我是否需要修改我的程序以引用旧的PIA?

“排序”

不能在任何PIA调用中使用任何版本的Outlook。但是,可以使用特定底层Outlook COM支持的PIA调用。PIA只是Outlook COM接口的包装器。(这意味着较新的PIA将显示无法在旧客户端上使用的方法/属性;请参阅Bradley的评论。)

也就是说,新的PIA将与旧的Outlooks*一起工作,因为基础COM接口已经定义得很好,所以不必引用不同的PIA

2007年以前的Outlook缺少很多功能。外接程序Express提供(非免费)“版本中立API”,支持最低公分母方法

*IIRC,至少到2000年展望


愉快的编码。

如果您试图访问与Outlook早期版本不支持的功能相关的属性或方法,您将得到一个
COMException
。如果您对功能历史有足够的了解,可以使用最新版本的PIA来支持多个版本的Outlook。有什么好的模式吗?