我已经搜索了许多已经处理过这类问题的帖子,但我仍然无法在我的案例中使其发挥作用。
我正在尝试创建一个链接文件以使用cmd.exe启动bat文件(因为bat文件以间谍/控制台模式启动服务,因此必须显示控制台)。 bat文件是在服务的安装过程之前创建的。 链接文件在安装过程中在Windows开始菜单中创建,因此它可以嵌入安装服务的exe文件的路径。
由于根路径将链接到cmd.exe,我需要将服务的exe路径作为bat文件的参数传递,它本身就是cmd.exe文件的参数......
我已尝试将此语法作为此威胁的解决方案: correct quoting for cmd.exe for multiple arguments
程序路径中的空格+带空格的参数:
cmd / k“”c:\ batch files \ demo.cmd“”带空格的参数1“”带有空格的参数2“”
所以在我的情况下,我写了:
cmd /k ""C:\Program Files (x86)\Company\Licenses Server\Debug Mode.bat" "C:\Program Files (x86)\Company\Licenses Server\""
以下是“Debug Mode.bat”文件的内容:
@ECHO off
net stop company.service
START %~f1ServiceFile.exe /console spymode
net start company.service
@ECHO On
但是当我启动链接文件时,我收到消息:
Windows无法找到C:\ Program ...
必须有一个“引用”问题,但我尝试了很多不同的语法,我无法弄清楚这里出了什么问题......