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

[系统相关] 批处理判断硬件并执行程序

虚心请教判断CPU内存显卡是否足够运行游戏
这是别人的一个批处理,网上找的,是判断硬件的,
@echo off
color 0a
title       伤脑筋 硬件检测            bbs.verybat.cn     
start "" /min cmd /c echo "获取显卡信息中不要关闭" ^& dxdiag /t %TEMP%\temp.txt
mode con cols=90
sc config      winmgmt start= auto >nul 2<&1
net start winmgmt 2>nul
setlocal      ENABLEDELAYEDEXPANSION
echo 主版:
for /f "tokens=1,* delims==" %%a in ('wmic BASEBOARD get Manufacturer^,Product^,Version^,SerialNumber /value') do (
         set /a tee+=1
         if "!tee!" == "3" echo           制造商       = %%b
         if "!tee!" == "4" echo           型      号       = %%b
         if "!tee!" == "5" echo           序列号       = %%b
         if "!tee!" == "6" echo           版      本       = %%b
)
set tee=0
echo          BIOS:
for /f "tokens=1,* delims==" %%a in ('wmic bios      get
CurrentLanguage^,Manufacturer^,SMBIOSBIOSVersion^,SMBIOSMajorVersion^,SMBIOSMinorVersion^,ReleaseDate /value') do (
         set /a tee+=1
         if "!tee!" == "3" echo           当前语言 = %%b
         if "!tee!" == "4" echo           制造商       = %%b
         if "!tee!" == "5" echo           发行日期 = %%b
         if "!tee!" == "6" echo           版      本       = %%b
         if "!tee!" == "7" echo           SMBIOSMajorVersion = %%b
         if "!tee!" == "8" echo           SMBIOSMinorVersion = %%b
)
set tee=0
echo.
echo CPU:
for /f "tokens=1,* delims==" %%a in ('wmic cpu get name^,ExtClock^,CpuStatus^,Description /value') do (
         set /a tee+=1
         if "!tee!" == "3" echo           CPU个数       = %%b
         if "!tee!" == "4" echo           处理器版本       = %%b
         if "!tee!" == "5" echo           外       频       = %%b
         if "!tee!" == "6" echo           名称及主频率       = %%b
)
set tee=0
echo.
echo 显示器:
for /f "tokens=1,* delims==" %%a in ('wmic DESKTOPMONITOR      get name^,ScreenWidth^,ScreenHeight^,PNPDeviceID /value') do (
         set /a tee+=1
         if "!tee!" == "3" echo           类        型      = %%b
         if "!tee!" == "4" echo           其他信息      = %%b
         if "!tee!" == "5" echo           屏幕高        = %%b
         if "!tee!" == "6" echo           屏幕宽        = %%b
)
set tee=0
echo.
echo 硬      盘:
for /f "tokens=1,* delims==" %%a in ('wmic DISKDRIVE get model^,interfacetype^,size^,totalsectors^,partitions /value') do (
         set /a tee+=1
         if "!tee!" == "3" echo           接口类型      = %%b
         if "!tee!" == "4" echo           硬盘型号      = %%b
         if "!tee!" == "5" echo           分区数        = %%b
         if "!tee!" == "6" echo           容        量      = %%b
         if "!tee!" == "7" echo           总扇区        = %%b
)
echo 分区信息:
wmic LOGICALDISK      where mediatype='12' get description,deviceid,filesystem,size,freespace
set tee=0
echo.
echo 网      卡:
for /f "tokens=1,* delims==" %%a in ('wmic NICCONFIG where "index='1'" get ipaddress^,macaddress^,description /value') do (
         set /a tee+=1
         if "!tee!" == "3" echo           网卡类型      = %%b
         if "!tee!" == "4" echo           网卡IP        = %%b
         if "!tee!" == "5" echo           网卡MAC       = %%b
)
set tee=0
echo.
echo 打印机:
for /f "tokens=1,* delims==" %%a in ('wmic PRINTER get caption /value') do (
         set /a tee+=1
         if "!tee!" == "3" echo           打印机名字      = %%b
)
set tee=0
echo.
echo 声       卡:
for /f "tokens=1,* delims==" %%a in ('wmic SOUNDDEV get name^,deviceid /value') do (
         set /a tee+=1
         if "!tee!" == "3" echo           其他信息      = %%b
         if "!tee!" == "4" echo           型        号      = %%b
)
set tee=0
echo.
echo 内        存:
for /f "tokens=1,* delims==" %%a in ('systeminfo^|find "内存"') do (
        echo             %%a 4534 %%b
)
echo.
echo 显        卡:
del /f "%TEMP%\temp.txt" 2>nul
:显卡
rem 这里需要30秒左右!
if EXIST "%TEMP%\temp.txt" (
        for /f "tokens=1,2,* delims=:" %%a in ('findstr /c:" Card name:" /c:"Display Memory:" /c:"Current Mode:" "%TEMP%\temp.txt"') do (
             set /a tee+=1
             if !tee! == 1 echo         显卡型号: %%b
             if !tee! == 2 echo         显存大小: %%b
             if !tee! == 3 echo         当前设置: %%b
)       ) else (
        ping /n 2 127.1>nul
        goto 显卡
)
set /p var=需要额外信息吗(y/n):
if /i %var% == y notepad "%TEMP%\temp.txt"
del /f "%TEMP%\temp.txt" 2>nul
pause

我想用它的基础上,只截取里面显示CPU,内存,显卡,这三个就好,
再加上自己的后半部分,用来判断CPU,内存,显卡,是否能够达到要求
思路是这样的,先判断CPU的品牌,AMD,INTEL,CURO,CELEROR,然后再截取后面的字符来判断赫值大小,如果AMD大于2500,显示结果就是合作,如果AMD小于2500,输出结果其中一列显示CPU未达到要求
如此类推
高手能看看吗

返回列表