Chrome 扩展程序:无法启动本机消息传递主机
Posted
技术标签:
【中文标题】Chrome 扩展程序:无法启动本机消息传递主机【英文标题】:Chrome Extension: Failed to start native messaging host 【发布时间】:2015-10-30 17:14:02 【问题描述】:我正在使用本机消息传递技术开发 Chrome 扩展程序。 该扩展程序有效,但在某些 PC 上出现错误:
无法启动本机消息传递主机
其中一些(不是全部)PC 运行的是 Windows 7 和 Windows XP:
Windows 7:PC 在用户文件夹C:\Users
上有一个锁定图标。我可以按照tutorial 修复它并重新启动 PC 以使我的扩展工作。
Windows XP:我没有找到任何解决此错误的方法。
根据nativeMessaging documentation,我认为问题与chrome.exe
文件和本机主机应用程序文件的文件系统安全权限有关。
这个问题我在其他群里问过很多次了,在google上搜索过,都没有找到解决办法。
-
如何查看
chrome.exe
文件或本机宿主应用文件的权限是否正常?
还有其他方法可以解决这个问题吗?
【问题讨论】:
到目前为止,这似乎是一个与您的扩展无关的罕见问题。无论如何,在启动本机应用程序之前您无能为力,因为 Chrome 不会公开任何 API 来检查文件系统权限。 链接线程中的 cmets 还说您有错字:注册表路径应包含Software
,而不是 Sofware
。
嗨,谢谢 wOxxOm!你看到我的案子了吗?你在win xp中解决了这个问题吗?
【参考方案1】:
Xan 的评论是正确的。 --enable-native-messaging 不需要。
更新: 最后,Failed to start native messaging host on Windows, "COMSPEC is not set"这个答案让我大吃一惊。
需要在系统变量中添加ComSpec
。
【讨论】:
1) 默认情况下启用本机消息传递。 2)该标志肯定格式错误,中间没有带有--
的标志。 3) 我找不到任何证据表明这实际上是当前 Chrome 版本中存在的标志。以上是关于Chrome 扩展程序:无法启动本机消息传递主机的主要内容,如果未能解决你的问题,请参考以下文章
如何使用本机消息传递主机调试未打包的 Microsoft Edge 扩展?
如何在 chrome 扩展本机消息传递和 c# 应用程序之间发送/接收消息
用 C# 编写的 Google chrome Extension Native Messaging 主机不在计算机启动时运行