我正在尝试创建一个批处理文件来启动我从1 .batch文件而不是2个单独文件中创建的2个批处理文件之一。我正在尝试将其输入您可以输入数字或字母的位置,单击输入,然后它将启动该.batch。我已经测试了两个单独的.batch文件工作:我只是试图找到一个.batch文件从一个地方启动它们,所以我不必继续浏览文件夹只是为了启动它们。为什么我需要这个:2个单独的.batch文件是在我从minecraftforum下载了两次使用jportable(32位+ 64位程序)的minecraft portable 2.7.2之后制作的。如果计算机与上一个计算机有不同的位置,我每次插入USB时都不想继续在文件夹之间切换,所以我想找一个.batch来启动2个.batch文件中的一个(而不是我不断切换,我只是转到这个批次,选择其中一个,然后选择将启动)
我正在寻找的这个批次基本上就像我制作的2个.batch文件的启动面板一样。我制作的2个.batch文件是:
set zone=mcp_data
set APPDATA=%CD%\%zone%
Start MC64.exe
exit
第二是:
set zone=mcp_data
set APPDATA=%CD%\%zone%
Start MC32.exe
exit
如果有人可以提供帮助,我将非常感激。
答案 0 :(得分:1)
这应该有效,而不是有两个批处理文件:
set zone=mcp_data
set APPDATA=%CD%\%zone%
if defined ProgramFiles(x86) (
Start MC64.exe
) else (
start mc32.exe
)
exit
答案 1 :(得分:0)
两种可能的解决方案,第一个示例解决方案接受一个参数,因此在命令行中键入“launcher 1”或“launcher 2”。这具有额外的优势,您可以使用适当的参数设置快捷方式。第二个解决方案执行您实际要求的提示。我将两者合并为一个批处理文件,因此您可以使用这两种方法。
@echo First solution
if "%1"=="1" call Batch1.bat
if "%1"=="2" call Batch2.bat
if not "%1"=="" goto end
rem or alternatively
@echo Second solution
set /p id=Enter number:
if "%id%"=="1" call Batch1.bat
if "%id%"=="2" call Batch1.bat
:end
答案 2 :(得分:0)
if %PROCESSOR_ARCHITECTURE%=AMD64 (
start MC64.EXE
) else (
start MC32.EXE
)
为什么更复杂?