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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!