@echo off
cd /d "%~dp0"&color 07 &title 解压外置更新文件文件,请稍候……
ver | find "5.1" > NUL && set WIN=winxp && goto Subroutine
ver | find "6.1" > NUL && set WIN=win7 && goto Subroutine
ver | find "6.2" > NUL && set WIN=win8 && goto Subroutine
ver | find "6.3" > NUL && set WIN=win8.1 && goto Subroutine
ver | find "10" > NUL && set WIN=win10 && goto Subroutine
:: ================================
:winxp.x86
pause
echo %WIN%
pause
echo 0
:win7.x86
echo %WIN%.x86 && exit 0
:win7.x64
echo %WIN%.x64 && exit 0
:win8.x86
echo %WIN%.x86 && exit 0
:win8.x64
echo %WIN%.x64 && exit 0
:win10.32
echo %WIN%.x86 && exit 0
:win10.x64
echo %WIN%.x64 && exit 0
:Subroutine
if "%PROCESSOR_ARCHITECTURE%"=="x86" set WIN=%WIN%.x86 && echo %WIN% && pause && goto %WIN% || echo x86 error && pause
if "%PROCESSOR_ARCHITECTURE%"=="AMD64" set WIN=%WIN%.x64 && echo %WIN% && pause && goto %WIN% || echo x64 error && pause
gogo11 发表于 2016-4-15 13:42
if里边好像只能有一个语句,不能&& ,两个就出错!!!!!!!!不过上边那个带pause的就正确,没出问题~ ...
nttwqz 发表于 2016-5-28 19:25
不知道楼主是用来干嘛的,下面的仅供参考!
dos时代菜鸟 发表于 2016-5-28 22:47
何必那么麻烦?
dos时代菜鸟 发表于 2016-5-28 23:43
不能用 那个方法 判断 系统 名称 ,涉及到WES系统
dos时代菜鸟 发表于 2016-5-28 22:47
何必那么麻烦?
nttwqz 发表于 2016-5-29 08:52
原因了找到了,因为WinXP输入ver得到的结果是这样的
Microsoft Windows XP [版本 5.1.2600]
2010tljabc 发表于 2016-5-29 15:37
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
set verx=Null
dos时代菜鸟 发表于 2016-5-29 15:08
如果确定是 简体中文
可以如图:
nttwqz 发表于 2016-5-29 17:02
用“版本”两个字作为分隔符的话,要考虑到其它语言的系统,虽然几乎见不到,但是明显“[”来的更可靠, ...
dos时代菜鸟 发表于 2016-5-30 06:36
根据 21 楼 代码 简化的:
欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) | Powered by Discuz! X3.3 |