You need to enable JavaScript to run this app. 如何配置Chrome Native Messaging Host带参数启动?
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Chrome Native Messaging Host带参数启动?

Chrome Native Messaging Host 带启动参数的解决方案

Native Messaging 原生支持带参数启动,以下是两种稳定可行的实现方案:

方案1:使用manifest官方args配置项(优先推荐)

Chrome Native Messaging 的 manifest 规范原生提供了args可选字段,专门用于传递启动参数,无需拼接在路径中。配置示例如下:

{
  "name": "correct.name.host",
  "description": "你的原生主机描述",
  "path": "C:\\完整路径\\crypto-extension-host.exe",
  "type": "stdio",
  "allowed_origins": [
    "chrome-extension://你的扩展ID/"
  ],
  // 新增args字段,按顺序填写所有启动参数即可
  "args": ["-Dconfig.file=test-application.conf"]
}

Chrome 启动主机时会自动将args数组中的参数传递给目标exe,无需额外处理即可正常使用stdio通信。

方案2:修复批处理脚本的stdio透传问题

如果因特殊场景无法使用args配置,之前批处理脚本失效的原因是错误使用了start等会创建独立子进程的命令,导致Chrome创建的stdio通信管道无法和目标exe绑定。使用如下写法的bat脚本即可正常通信:

@echo off
:: 不要加start命令,直接调用exe即可自动继承当前脚本的stdio管道
"C:\完整路径\crypto-extension-host.exe" -Dconfig.file=test-application.conf

配置时将manifest的path字段改为该bat文件的完整路径即可。


原问题错误原因说明

  • 参数直接拼接在path字段无效:Chrome会将整个path字符串当做单一文件路径查找,不会做命令行参数拆分,因此系统会报错找不到对应二进制文件
  • 错误bat脚本失效:使用start命令会让exe在独立新进程中运行,脱离Chrome的stdio通信管道,导致无法收发消息

内容的提问来源于stack exchange,提问作者omastik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 08:03:02