[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] [已解决]批处理判断C盘的系统版本号,但是对WIN7不能识别?

本帖最后由 wlishihua 于 2021-8-6 09:14 编辑

判断C盘的系统版本号,对WIN10各个版本能识别,但是对WIN7不能识别
  1. @echo off
  2. set "v1=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion"
  3. set "v2=HKLM\My_Hive\Microsoft\Windows NT\CurrentVersion"
  4. set "Hive=windows\system32\config\software"
  5. for %%i in (C ) do (
  6.     if /i "%%i:"=="%SystemDrive%" (
  7.         for /f "tokens=1,2*" %%a in ('reg query "%v1%"') do (
  8.             if /i "%%a"=="ProductName" (
  9.                 echo,系统分区是:%%i
  10.                 echo,原 系 统 是:%%c&echo,
  11.             )
  12.         )
  13.     ) else if exist "%%i:\%Hive%" (
  14.         reg load "HKLM\My_Hive" "%%i:\%Hive%" >nul
  15.         for /f "tokens=1,2*" %%a in ('reg query "%v2%"') do (
  16.             if /i "%%a"=="ProductName" (
  17.                 echo,系统分区是:%%i
  18.                 echo,原 系 统 是:%%c&echo,
  19.             )
  20.         )
  21.         reg unload "HKLM\My_Hive" >nul
  22.     )
  23. )
  24. pause
复制代码
判断C盘的系统版本号,对WIN10各个版本能识别,但是对WIN7不能识别。它将WINDOWS7旗舰版识别为WINDOWS10 PRO
不知道各位有什么解决办法没有

回复 21# 路过


    PE下用的,有点特别

TOP

"已解决"只是表示帖子已完结,形式不重要,表达准确即可。

TOP

运行CMD.exe,第一行不就给出了你的系统名称和版本么
  1. @echo off
  2. (echo;exit|%ComSpec%)|find "版本 10." && set WinVer=10
  3. (echo;exit|%ComSpec%)|find "版本 7." && set WinVer=7
  4. echo;WINDOWS%WinVer%
  5. pause
  6. exit
复制代码

TOP

回复 18# cmd1152


    是[已解决]不是已解决:...
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 17# wlishihua


    或者要执行的DDD.exe不对,DDD.exe在不在当前目录下
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 17# wlishihua


    你显示 隐藏文件/文件夹/驱动器 + 显示隐藏的系统文件 看看有没有这个目录
1

评分人数

梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

本帖最后由 wlishihua 于 2021-8-5 22:21 编辑

回复 16# cmd1152

是WIN10
是不是是隐藏的文件夹的原因
试了一下找这个splwow64.exe执行文件就能识别
if EXIST C:\Windows\splwow64.exe (start xxx.exe) else (start DDD.exe)

WSReset.exe用这个,WIN7没这个文件
if EXIST C:\Windows\System32\WSReset.exe (start xxx.exe) else (start DDD.exe)

在W7测试一下,通过,谢谢!

TOP

回复 15# wlishihua


    证明你的系统不是win10
如果存在此目录就是win10,否则就是win7,只有win10才有APP目录。
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

本帖最后由 wlishihua 于 2021-8-5 22:01 编辑

运行不了 判断C盘可以执行 ,判断文件夹不能执行
if EXIST C:\ (start xxx.exe) else (start DDD.exe)

TOP

回复 13# wlishihua


    差点忘了(我因为是那个帖子)
    代码:
  1. if EXIST C:\Program Files\WindowsApps (start xxx.exe) else (start DDD.exe)
复制代码
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 12# cmd1152
if EXIST C:\Program Files\WindowsApps (set xt=Win10) else (set xt=win7)
没什么显示,如果识别是WIN10就执行xxx.exe

如果识别是WIN7就执行DDD.exe

TOP

回复 11# wlishihua


    代码错了,你现在再看看。
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 7# cmd1152


    运行不了

TOP

回复 8# newswan
在PE下不能识别,注册表不好办,因为它只认X盘的注册表

TOP

返回列表