我有一个虚拟机在虚拟PC 2007。

要从桌面启动它,我在批处理文件中有以下命令:

"c:\program files\Microsoft Virtual PC\Virtual PC.exe" -pc "MY-PC" -launch

但是这会在主机上留下dos提示符,直到虚拟机关闭,我退出virtual PC控制台。这是令人讨厌的。

所以我把我的命令改为使用START命令:

start "c:\program files\Microsoft Virtual PC\Virtual PC.exe" -pc MY-PC -launch

但是传入Virtual PC的参数会阻塞。

开始/ ?指示参数确实位于该位置。有人用START启动一个带有多个命令行参数的程序吗?


当前回答

将文件夹中的“VirtualPC.exe”更改为不带空格的名称,例如“VirtualPC.exe”。 当你用“”写start“path”时,CMD会以路径为标题启动一个新的CMD窗口。 将名称更改为没有空格的名称,将其写在记事本上,然后保存为“名称”。cmd或Name.bat:

CD\
CD Program Files
CD Microsoft Virtual PC
start VirtualPC.exe
timeout 2
exit

该命令将重定向CMD到文件夹,启动VirualPC.exe,等待2秒并退出。

其他回答

如果你想传递参数和你的。exe文件在c:驱动器的测试文件夹

start "parameter" "C:\test\test1.exe" -pc我的名字-pc -启动

如果你不想传递参数和你的.exe文件在c:驱动器的测试文件夹

start "" C:\test\test1.exe" -pc My Name-PC -launch

如果您不想在H:(Any Other)驱动器的测试文件夹中传递参数和您的.exe文件

start "" H:\test\test1.exe" -pc我的名字-pc -启动

/ b参数

start /b "" "c:\program files\Microsoft Virtual PC\Virtual PC.exe" -pc "MY-PC" -launch

你可以通过使用[/D"Path"] use /D只指定路径而不是路径+程序来使用引号。接下来同一行上的所有代码似乎都恢复正常,这意味着您不需要分开路径和文件。

    start  /D "C:\Program Files\Internet Explorer\" IEXPLORE.EXE

or:

    start  /D "TITLE" "C:\Program Files\Internet Explorer\" IEXPLORE.EXE

将以默认网页启动IE。

    start  /D "TITLE" "C:\Program Files\Internet Explorer\" IEXPLORE.EXE www.bing.com

启动必应,但不重置你的主页。

/D代表“目录”,使用引号是可以的!

错误的例子:

    start  /D "TITLE" "C:\Program Files\Internet Explorer\IEXPLORE.EXE"

给:

当前目录无效。

/D后面只能跟目录路径。然后空格和要启动/运行的批处理文件或程序

经过测试,在XP下工作,但windows Vista/7/8可能需要对UAC进行一些调整。

-Mrbios

你有没有试过:

start "c:\program files\Microsoft Virtual PC\Virtual PC.exe" "-pc MY-PC -launch"

?

如果必须在任何参数处使用双引号,则会得到错误“‘c:\somepath’不被内部或外部命令、可操作程序或批处理文件识别”。 我建议使用双引号时的解决方案如下: https://stackoverflow.com/a/43467194/3835640