使用Microsoft Outlook 14.0对象库DLL的安全性

时间:2012-11-24 17:20:40

标签: c# dll vbscript outlook compatibility

在我的C#程序中,我最初调用外部VBS脚本来运行一些Outlook操作内容(将vCards导入Outlook)。我决定将其改为直接的C#代码,因为使用VBS的不合理,以及一个难以确定的错误。

首先,我使用了Microsoft Outlook 11.0对象库。这在Windows 7上看起来很棒,但是当我尝试在Windows XP上运行以下代码行时,它崩溃了:var outlook = new Microsoft.Office.Interop.Outlook.Application();。显然,我确保Microsoft.Office.Interop.Outlook.dll和Office.dll文件与C#exe一起位于用户的文件夹中,但这没有帮助。请记住,这是一个.NET 3.5 Client Profile应用程序。

然后我尝试使用14.0对象库而不是11.0(我的另一台计算机上安装了Outlook 2010而不是Outlook 2003(版本11)的第14版)。我现在没有使用MSOUTL.OLB,而是直接引用了上面提到的两个DLL。即使在XP上,它现在也能正常工作,或者看起来效果很好。

有些问题:

1:我可以合法地重新分发Microsoft.Office.Interop.Outlook.dll和Office.dll以及我的程序(与exe相同的文件夹),如果有的话,有什么办法可以减少大约1.5meg的大小压缩?

2:这条路线(使用Microsoft Outlook 14.0对象库)是否安全,并且可能比在最终用户的PC上使用VBS更安全?

3:附带问题:引用MSOUTL.OLB(即引用时的COM菜单)和直接引用这两个DLL(Microsoft.Office.Interop.Outlook.dll和Office.dll)之间的区别是什么。它们似乎都做同样的工作(前OLB无论如何都创建了DLL)。

0 个答案:

没有答案