如何将 bat 脚本用作 Chrome 本地消息传递主机?

How do I use bat script as Chrome Native Messaging Host?

我知道第一反应是什么,但我的要求很少,为此编写脚本未免有些矫枉过正。我想要的只是 运行 一个系统命令并将其输出发送到扩展程序。
这是我试过的

@echo off
:strt
:: my code
goto strt

无效。 上面的代码给我一个错误消息 Error when communication with the native messaging host.

下面的例子Here

原来 .bat 不满足 chrome 本地消息传递主机 的要求。我对主机的要求很简单,使用 python 或 c++ 都太 much.I 已选择 powershell 来完成任务。

这里是 powershell 版本

try {
$reader = New-Object System.IO.BinaryReader([System.Console]::OpenStandardInput())
$len = $reader.ReadInt32()
$buf = $reader.ReadBytes($len)
$msg = [System.Text.Encoding]::UTF8.GetString($buf)

$nets = ConvertFrom-Csv (getmac /fo CSV /v)
..
..
..
# you get the point.
Response @{mac = $mac} }

回答我自己的问题,希望对以后的人有所帮助。