VSTO C#advanced部署vsto到wps-兼容office和wps

advanced这个工具,竟然可以打包vsto,在部署到wps上时也可以像office那样一键安装完成部署了。
打包工具:advanced install 16.6
开发环境:vs2010,wps:专业版2016

Advanced Installer 18中文破解版下载 v18.0(附破解补丁+破解教程) - zd423

一、编译项目,生成文件

我创建的项目是excel 2010外接程序,创建完成,添加一个按钮用于测试,编译项目(我直接拿debug版测的,正式发布用release版本)。

二、创建advanced install打包项目

以下是整个过程的截图

名称和组织姬最终会呈现在注册表中项的名称,随便填

1、从项目导入

选择要打包的VSTO项目地址,选择sln文件就可以了

 比如我选了一个我写的一个vsto demo

 可以选择Debug(调试)或者 Release(发布)版本进行打包,我这边选择了Debug版本,你们也可以选择使用Release的(只要你们release过),跟在visual studio的使用有关。

选择打包进去的文件,选这几个就够了

选择相关的版本,我本地是2010的office,选了这几个也能用

随便填,然后选下,这个安装包是给本机当前用户安装,还是给本机所有用户安装

这个不勾

这个也不勾

因为本机环境都有了,如果目标机有需求的话,可以勾

选择语言版本,我当然选了简体中文

添加许可协议,需要存为rtf文件,没有rtf文件的,可以先用word,然后另存为rtf文件即可

如果你只希望生成的插件给office使用,那现在就可以build了,但是我们要兼容一下wps,这样打包我们还是没法用的,因为wps找不到这个程序

点击完成,我们就新建好了一个api项目,并且进入到了这个项目页面

 可以看到,这是一个,名为ExcelAddIn3的Advanced Installer项目

打开Resource(资源)里的Registry(注册表)

在什么都没有情况下,我们可以看出,这个安装包,只为office的excel下注册了加载项,没有为wps注册加载项,所以,即使这个安装包安装了,我们打开wps,也是无法找到这个加载项的

所以,我们需要知道wps的注册表结构是怎么样的,因为笔者本机电脑上安装了wps,所以我们看一下它的具体结构,我们打开cmd(快捷键Win+R)

输入regedit,回车,就打开了注册表

 因为wps是金山的,所以叫kingSoft也是挺正常的,如果你的电脑没有安装wps,那应该是看不到这个kingSoft的

我们可以清晰的看到kingsoft里面的结构,wps里的所有excel相关的加载项,请写在AddinsWL里,不要被注册表吓到了,只是加个名罢了,就一个字符串而已

所以我们复制一下 kingsoft\Office\ET\AddinsWL 这个文件结构,可能随着时间的推移,wps的注册表结构变化了也不一定,请以你当前的结构为准

把这个结构,添加进我们的api项目里的注册表配置里,这样,我们打包出来的程序在安装的时候,会帮我们在目标机器上自动在这个注册表路径,填写程序名,这样wps就可以找到对应的程序

填一下结构

目前还没有结束,因为wps是要填value值的

 把office下,它帮我们在Addins下写的名字复制一下,写进wps里

ok,给HKEY_CURRENT_USER也复制一份

完事,因为我只选了给当前用户安装,所以,我只改了当前用户的注册表

切回到Product information ,这个时候,就可以进行构建了

构建成功

这里可以打开我们设置的 存放产出物 的文件夹

安装看看

可以看到我们精心写的协议

 打开excel看看,虽然加载项名字叫ExcelAddIn3,但是内核还是安装文件夹下的ExcelAddIn1.vsto文件

再看wps,加载项也自动加载进来了

2、选择之前项目编译生成的文件


创建的是Excel2010的外接程序

如果是在普通客户端安装勾选VSTO runtime运行环境,如果离线安装的话提前下好该安装包。

先不要着急构建

在注册表中插入wps excel的注册表项,关于怎么知道wps对应的注册表项直接度娘,网上会介绍的很详细

保证在wps注册表项里创建的值要与excel注册表项值一致


拖拽到CURRENT_USER\Software节点下

开始构建


可以看到在客户端电脑注册表里面已经添加了我们刚刚的内容了


打开wps excel,发现插件已经部署成功

更详细的流程可以查看视频:利用advanced install打包部署vsto到wps

posted @   多见多闻  阅读(1715)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示