找回密码
 加入
搜索
查看: 2280|回复: 8

[系统综合] 如何在PE底下判断C盘的系统版本?

  [复制链接]
发表于 2013-3-28 13:53:41 | 显示全部楼层 |阅读模式
如何在PE底下判断C盘的系统版本,并按系统版本而执行命令?
发表于 2013-3-28 15:04:23 | 显示全部楼层
我也正需求次判断,最简单检测ntldr与bootmgr 但是还有32位和64位区别,再判断wom64文件夹?
发表于 2013-3-28 15:22:45 | 显示全部楼层
刚在注册表搜索了一下‘windows xp’结果搜到这么一个注册表项应该可以用于判断系统类型:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion项目下的

ProductName的值

xp的为MICSOFT WINDOWS  XP
 楼主| 发表于 2013-3-28 15:32:35 | 显示全部楼层
回复 3# juneqin2011


    但是在PE底下又要用何调用注册表哟
发表于 2013-3-28 15:56:58 | 显示全部楼层
REG.EXE LOAD HKLM\SOFTWARE_X  X:\WINDOWS\SYSTEM32\CONFIG\SOFTWARE
 楼主| 发表于 2013-3-28 16:17:44 | 显示全部楼层
回复 5# juneqin2011


    能不能写个AU3出来
发表于 2013-3-29 01:17:14 | 显示全部楼层
@OSVersion不行吗?
 楼主| 发表于 2013-3-29 10:26:22 | 显示全部楼层
回复 7# mbdnmt


@OSVersion只能查询到正在运行的系统的版本吧
发表于 2013-3-29 10:27:48 | 显示全部楼层
去比一比系统目录里哪些东西不一样..........winxp x86下测试 可能不准......

$vercode = ""
$sysver = ""
If (Not FileExists("C:\WINDOWS\syswow64"))And FileExists("C:\WINDOWS\system32\kernel32.dll") Then
        $vercode = FileGetVersion("C:\WINDOWS\system32\kernel32.dll",  "FileVersion")
Else
        $vercode = FileGetVersion("C:\WINDOWS\syswow64\Wow64.dll",  "FileVersion")
EndIf        
$sysver = StringLeft($vercode, 3)
Switch $sysver
        Case "5.0"
                $sysver = "Win 2000"
        Case "5.1"
                $sysver = "Win XP"
        Case "5.2"
                $sysver = "Win 2003 server"
        Case "6.0"
                $sysver = "Vista"
        Case "6.1"
                $sysver = "Win7"
EndSwitch
If FileExists("C:\WINDOWS\syswow64") Then
        $sysver &= " --- x64"
Else
        $sysver &= " --- x86"
EndIf
MsgBox(0, "C盘系统为", $sysver)
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-16 04:21 , Processed in 0.075973 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表