从开始写VSTO的插件开始,安装部署一直就是一个很大的难题,其实难题的原因主要是针对XP+2007而言。在Win7上,由于基本上都预装了.net framework,所以安装起来其实问题不大。
主要需要解决的问题:
①.net环境(添加安装包)
②VSTOR(添加安装包)
③PIA(代码中引用两个DLL,在打包时加上)
解决方案步骤:
1、解决PIA的问题,是需要在代码中进行设置的,具体步骤如下:
步骤一:引用中的Office.dll,设置为复制本地(如果你不把嵌入互操作类型改成False,是没办法设置的哦)
步骤二:添加引用Microsoft.Vbe.Interop,记得要选择和你环境一致的版本哦(我默认添加的Excel 2010的Add-In中,引用列表里没有,所以需要添加)
步骤三:引用中的Microsoft.Vbe.Interop.dll设置为复制到本地(同样,嵌入互操作类型不设置为false,你是无法改变这个状态的哦)
步骤四:编译成Release吧
2、打包工具升级为10.0以上版本,笔者尝试使用Advanced Installer 10.0成功,之前用Advanced Installer 9.8,怎么打包都失败,所以打包工具的版本很重要。
3、软件选择OK之后,就开始我们的打包之旅,解决打包问题的三要素也会在这里体现哦:①.net环境②VSTOR③PIA
步骤一:如图所示,新建Office Add-In项目(此处是以Office Add-In程序为例哦)
步骤二:设置相关细节,单击下一步,到如下界面时,选择exe或者msi即可。
步骤三:设置保存位置及生成安装包名称,到如图所示,选择新建步骤的类型时,选择创建VSTO Office加载项
步骤四:如图所示,选择从Visual Studio项目中导入文件。
步骤五:配置当然选Release了,这个就不细说了,一般情况下,默认选项即可,如图,配置工程时的两个DLL,一定要勾选上哦(③PIA)。
步骤六:根据自己的情况,选择哦
步骤七:后面的设置随意,按照自己的情况来,到了设置配置加载项的启动条件这步了,啥都可以不用选哦
步骤八,.net framework一定要加,VSTOR一定要加,最后那个PIA呢,是前面的解决方案就不是这里啦
我的是.net 4.0,所以选了.net4.0哦(①.net②VSTOR)
注:关于.net framework,07默认是3.5, 10是4.0,13是4.5,需要兼容的话,必需选择4.0