ClickOnce部署VB.NET VSTO插件时,清单与PorjName.WPF.exe不匹配报错求助
解决ClickOnce安装VB.NET VSTO插件时的Manifest匹配错误

项目结构
- 解决方案
- VSTO项目(已添加WPF项目作为引用)
- WPF项目
错误信息
Error : Reference in the manifest does not match the downloaded assembly PorjName.WPF.exe
问题场景
安装通过ClickOnce发布的VB.NET VSTO插件时触发上述错误,尝试寻找WPF项目的"Create application without manifest"选项但VB.NET中无此设置。
解决办法
同步程序集版本
右键WPF项目→属性→应用程序,查看并记录程序集版本;再到VSTO项目的引用中找到该WPF程序集,检查属性里的版本号,确保两者完全一致,不一致则统一修改后重新生成。清理重建并更新发布清单
- 右键解决方案→清理解决方案,清除所有旧生成文件
- 先单独生成WPF项目,再生成VSTO项目
- 打开VSTO项目属性→发布,点击「更新」按钮重新生成ClickOnce发布清单
手动修正清单文件
找到VSTO发布目录下的.manifest文件,用文本编辑器打开,定位到PorjName.WPF.exe对应的引用节点,将version属性值修改为实际WPF程序集的版本号,保存后重新发布。核对输出路径与引用路径
右键WPF项目→属性→生成,确认输出路径;再检查VSTO项目中对WPF程序集的引用路径,确保引用的是最新生成的程序集,而非旧版本文件。
内容的提问来源于stack exchange,提问作者Rahul Shiyani




