基于Office PIA的应用程序,要想在客户的电脑上顺利地运行起来,可以有这几种办法:

方法一:让客户在安装Office的时候顺便安装“.Net可编程性支持”(.Net Programmability Support)

看截图,不解释:

方法二:让客户安装Office PIA

比如说Office 2007的PIA:在微软网站的下载频道搜索“Office 2007 PIA”,得到以下下载地址:

2007 Microsoft Office System Update: Redistributable Primary Interop Assemblies

http://www.microsoft.com/download/en/details.aspx?id=18346

但是以上两个方法有可能造成用户的体验不是特别好。我重点是想介绍方法三。

方法三:部署必要的DLL文件到程序执行目录下

首先,我们在做开发的机器上安装Office PIA以后,我们要知道我们都需要哪些DLL。并非所有的DLL都是我们需要的。

以我前面的例子《Office PIA:代码示例:生成Excel文件的ExcelApp类》为例:

我需要的DLL实际上只有这三个:

  • Microsoft.Office.Interop.Excel.dll
  • Microsoft.Vbe.Interop.dll
  • Office.dll

在Visual Studio project里面,添加对这三个DLL的引用(就是我用红线标记的这三个引用):

注意:如果仅仅添加对 Microsoft.Office.Interop.Excel.dll 的引用,已经可以让程序编译通过了。但为了能够Copy其余的两个DLL到程序执行目录,所以要把这三个引用添加全。

然后,把这三个引用的 Copy Local 属性都设为 True:

这样,当你的程序编译之后,这三个DLL也被Copy到了程序运行目录下。

当然,还有方法四:通过安装工程来部署相关的DLL。不再赘述。