从 COM 加载项中选择 [删除] 后无法重新注册 VSTO 加载项 window
Unable to re-register VSTO Add-in after choosing [Remove] from COM Add-ins window
我正在为 Ms Word 开发 VSTO 加载项。
运行 -> 在 VS 2017 中启动 (F5) 运行良好。
今天我 运行 通过发布加载项(ClickOnce,生成一个 .vsto 文件)并在我用于 developing/debugging 的同一台计算机上进行设置来进行我的第一次测试。为了在 Word 中进行设置,我只需双击 .vsto 文件并获得一条绿色勾号确认消息,表明自定义已成功安装。
我可以使用正式版没问题。
然后我想返回到 developing/debugging 加载项,但断点不会触发(实际上在某些时候 VS 表示它永远不会中断,因为没有注册标志,但我没有得到这条消息)。我认为该应用程序的发布版本仍处于启用状态,也许这就是阻止调试版本 运行 而不是发布版本的原因。
我进入 "COM Add-ins" window,取消勾选加载项,选中它并单击 [删除] 按钮,然后关闭 Word。
从那以后,Ms Word 的"COM Add-ins"window 中再也没有加载项出现。
我尝试了以下方法:
- 我确实从 add/remove 个程序中卸载了加载项 (Windows 10)
- 我确实硬删除了 "Computer\HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins"
中的整个注册表文件夹
- 我也曾尝试更改注册表中的 "Manifest" 字段以反映调试版本或发布版本的路径。
- 我检查了 Ms Word (Office 365) 中 File/Options/Add-ins 菜单的 "Disabled Items" 和 "Slow and Disabled Add-ins" 列表,
里面什么都没有。
- 我做了 运行 Clean/Rebuild 的 Project/Solution。
- 作为最后的手段,我尝试至少让发布版本工作,但通过已发布的 .vsto 文件重新安装不起作用
要么。
- 直接通过"COM Add-ins"window的[添加...]按钮添加外接程序的发布或调试版本(.exe文件与.vsto文件一起生成)进入 Ms Word 也没有任何效果:虽然我从 MS Office 自定义安装程序收到一条成功确认消息,并且一个条目文件夹被添加到注册表位于 "Computer\HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins".
- Repair/Reset - Word App 不起作用(来自 "Add or remove programs")
- 卸载 Word App 然后从 Microsoft Store 重新安装也不起作用
帮忙? :D
更新
我能够多次重复该行为:
- 创建一个新的"Word 2013 and 2016 VSTO Add-in "项目
- 开始调试 (F5),MS Word 启动
- 在Ms Word中:File/Options/Add-ins -> Select "COM Add-ins" 在下拉列表中点击[Go..]按钮显示"Com Add-ins" window
- Select 加载项并单击 [删除] 按钮
- 停止调试,这将关闭 Ms Word
- 开始调试(F5),Ms Word 启动
- 加载项未加载且未出现在 "COM Add-ins" window
然而,Regedit 显示了加载项的预期条目。
到目前为止,我能做的最好的事情就是更改程序集名称。
这允许解决方案被 Ms Word 视为不同的 Add-in 并被正确注册。
它有效,但这远不能被接受..
更新 1
现在使用完全签名的版本,并进行大量测试:这仅是 Windows 10 的问题,其中 ClickOnce "cut loose" 来自它在第一次安装后安装的 VSTO时间:通过“应用程序和设置”面板卸载您的 ClickOnce 应用程序,并且 VSTO 未从 Word 中注销;或手动注销 VSTO,ClickOnce 无法re-register 将其导入 Word。
以上步骤可以在Windows7下进行,没有问题。
更新 2
看起来这与 Office 的安装版本有关:Click-to-Run 与 Microsoft Store。 Windows 7 没有出现问题,因为 Microsoft Store 安装不可用。
此处完整回复:
我正在为 Ms Word 开发 VSTO 加载项。 运行 -> 在 VS 2017 中启动 (F5) 运行良好。
今天我 运行 通过发布加载项(ClickOnce,生成一个 .vsto 文件)并在我用于 developing/debugging 的同一台计算机上进行设置来进行我的第一次测试。为了在 Word 中进行设置,我只需双击 .vsto 文件并获得一条绿色勾号确认消息,表明自定义已成功安装。
我可以使用正式版没问题。
然后我想返回到 developing/debugging 加载项,但断点不会触发(实际上在某些时候 VS 表示它永远不会中断,因为没有注册标志,但我没有得到这条消息)。我认为该应用程序的发布版本仍处于启用状态,也许这就是阻止调试版本 运行 而不是发布版本的原因。 我进入 "COM Add-ins" window,取消勾选加载项,选中它并单击 [删除] 按钮,然后关闭 Word。
从那以后,Ms Word 的"COM Add-ins"window 中再也没有加载项出现。 我尝试了以下方法:
- 我确实从 add/remove 个程序中卸载了加载项 (Windows 10)
- 我确实硬删除了 "Computer\HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins" 中的整个注册表文件夹
- 我也曾尝试更改注册表中的 "Manifest" 字段以反映调试版本或发布版本的路径。
- 我检查了 Ms Word (Office 365) 中 File/Options/Add-ins 菜单的 "Disabled Items" 和 "Slow and Disabled Add-ins" 列表, 里面什么都没有。
- 我做了 运行 Clean/Rebuild 的 Project/Solution。
- 作为最后的手段,我尝试至少让发布版本工作,但通过已发布的 .vsto 文件重新安装不起作用 要么。
- 直接通过"COM Add-ins"window的[添加...]按钮添加外接程序的发布或调试版本(.exe文件与.vsto文件一起生成)进入 Ms Word 也没有任何效果:虽然我从 MS Office 自定义安装程序收到一条成功确认消息,并且一个条目文件夹被添加到注册表位于 "Computer\HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins".
- Repair/Reset - Word App 不起作用(来自 "Add or remove programs")
- 卸载 Word App 然后从 Microsoft Store 重新安装也不起作用
帮忙? :D
更新
我能够多次重复该行为:
- 创建一个新的"Word 2013 and 2016 VSTO Add-in "项目
- 开始调试 (F5),MS Word 启动
- 在Ms Word中:File/Options/Add-ins -> Select "COM Add-ins" 在下拉列表中点击[Go..]按钮显示"Com Add-ins" window
- Select 加载项并单击 [删除] 按钮
- 停止调试,这将关闭 Ms Word
- 开始调试(F5),Ms Word 启动
- 加载项未加载且未出现在 "COM Add-ins" window
然而,Regedit 显示了加载项的预期条目。
到目前为止,我能做的最好的事情就是更改程序集名称。 这允许解决方案被 Ms Word 视为不同的 Add-in 并被正确注册。 它有效,但这远不能被接受..
更新 1
现在使用完全签名的版本,并进行大量测试:这仅是 Windows 10 的问题,其中 ClickOnce "cut loose" 来自它在第一次安装后安装的 VSTO时间:通过“应用程序和设置”面板卸载您的 ClickOnce 应用程序,并且 VSTO 未从 Word 中注销;或手动注销 VSTO,ClickOnce 无法re-register 将其导入 Word。
以上步骤可以在Windows7下进行,没有问题。
更新 2
看起来这与 Office 的安装版本有关:Click-to-Run 与 Microsoft Store。 Windows 7 没有出现问题,因为 Microsoft Store 安装不可用。
此处完整回复: