我可以通过在CMD
中运行以下命令打开现金抽屉:
ECHO ^G>LPT1
问题是当我从批处理文件运行此命令时,没有任何反应。
我添加了一个timeout
来查看实际运行的命令,看起来我的命令在运行时会自动替换为以下命令:
ECHO G 1>LPT1
如何从批处理文件中运行原始命令?
谢谢。
答案 0 :(得分:2)
将插入符号从^
加倍到^^
,因为^单独是转义字符。
答案 1 :(得分:1)
这似乎对我有用:
如约瑟夫所说:
以管理员身份运行CMD Prompt,然后键入: 回声@echo(•^> COM5> c:\ Drawer.bat
将COM5更改为打印机打开的任何端口。我正在使用STAR TSP100IIIECO USB,并且使用了star驱动程序随附的虚拟com端口。
在记事本中打开时的结果是: 回声> COM5
您将看到记事本无法显示特殊字符,但是运行蝙蝠可以成功踢出抽屉。
我知道它是一个旧线程,但希望这可以帮助某人。
答案 2 :(得分:0)
ECHO G 1>LPT1
与
完全相同ECHO G>LPT1
第一个是正确的,第二个是msdos兼容性和我们最常使用的。 CMD修复它,因为它在批处理文件中而不是键入,它可以改变你看到的内容。
但是要在文本文件中输入Ctrl + G,请使用CMD重定向
echo echo [ctrl+g]^>lpt1
如果32位使用edit.com。在编辑中按Ctrl P然后按Ctrl G(它看起来与cmd不同)。
答案 3 :(得分:0)
如果我能理解,您需要将BELL
声音字符(ASCII 0x07
, Ctrl + G )发送到{{1设备。
不幸的是,在按下 Ctrl + G 之后,我的文本编辑器(以及LPT1
也会带来 Goto行对话框)方法 Alt + 07 advised here错误地mojibake转换为ASCII notepad.exe
。这是我的解决方法:从0x95
命令行输入
cmd
其中echo @echo(•^>LPT1>D:\bat\SO\32642290a.bat
代表 Ctrl + G 或 Alt + 07 并显示{{ 1}}在监视器上。
结果:
十六进制视图的结果: