用VS开发VSTO PPT插件,发布时遇到的坑

    因工作需要,会经常浏览很多网站,网上冲浪的时候,看到好的文章和教程也都想留存,已备不时之需。之前我是将这些网站添加进了浏览器书签中,日积月累,想用的时候每次都要去书签中找,真心觉有些麻烦。看到网上有大神用VSTO开发了一个PPT插件,是各种网站的导航,我觉得非常的nice,就决定自己学习一下,做一个和我工作相关的网站导航小工具。

    经过两天的学习,小工具已经开发完成了,想发布出一个安装包,以便我以后在其他的设备上也能安装使用。只是我没想到这发布的过程居然花了我最多的时间,一步一个坑啊。

    我准备把我在发布过程中遇到的问题,做一下总结和记录。

1.error MSB3482: 签名时出错: 密钥集不存在

尝试创建新证书 .

查看项目属性下的“签名”部分 .

在我的情况下,我的MSB3482错误发生,因为我的证书确实已过期 . 我点击了名为“创建测试证书”的按钮,

我用的是VS2019 版本,上网上重新找VS2019 的密钥,如下所示

1.Visual Studio 2019 Professional

NYWVH-HT4XC-R2WYW-9Y3CM-X4V3Y

2.Visual Studio 2019 Enterprise

BF8Y8-GN2QH-T84XB-QVY3B-RC4DF

输入对应的密钥,创建新的证书后,就可以继续编译运行了,问题解决。

2.发布出安装文件后,安装成功,但是 ppt加载addin出错

    在VS中发布成安装文件之后,运行安装完成。但是打开PPT发现插件并没有安装成功。这个问题也是困扰了我一阵。在网上找了很多最后得的结论就是在VSTO的开发过程中,因为通过安装程序加载了addin;后来由于调试也要加载开发版本的addin,因为内部冲突会导致开发版本的addin不能正常加载。

解决方案就是“清理注册表”。

手动清理步骤如下:

1、卸载通过setup安装的addin,通过ppt的文件--〉选项--〉加载项,在该对话框中,通过选择管理的COM加载项,转到COM加载项对话框中

2、启用你的addin项,如果启用成功,那么你幸运了,也可以到此结束了,不然就要走下面几步

3、运行regedit注册表编辑程序,找到HKCUSoftwareMicrosoftVSTASolutions,删除你那项的addin

4、运行第2步,还不行,走下面这一步

5、运行regedit注册表编辑程序,找到HKCUSoftwareMicrosoftVSTOSolutionMetadata,删除你那项的addin,并清除相应的guid项

6、运行第2步,不行,在Visual Studio重新生成你addin,然后调试,这样一般都可以了,还不行,就google吧,祝你好运

另外有个要注意的地方就是HKEY_CURRENT_USERSoftwareMicrosoftOfficePowerPoint,后面的PowerPoint可以为word,publisher等,具体的addin的配置信息都可以从这里找到

第三方软件进行清理:

    利用超级兔子、优化大师、安全卫士一系列的第三方软件清理,下面小编就以金山卫士为例,打开主界面,找到垃圾清理-清理注册表,开始扫描清理即可,金山卫士会自动把注册表备份,就不用我们在单独备份了,要是出了问题也容易恢复。

我就是用的安全卫士一次性清理掉了无用的注册表之后,ppt加载addin就成功了,也成功发布了安装文件。

好了今天就先分享到这里,如果有小伙伴对我开发这个导航过程有兴趣的话,我也可以做成教程和大家进行分享。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容