无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 3517|回复: 14
打印 上一主题 下一主题

批处理判断系统状态

[复制链接]
跳转到指定楼层
1#
发表于 2008-4-27 00:46:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如果想实现用批处理判断现在是处于win状态下(暂定为xp状态)还是处于pe下,该如何编写批处理呢?请知道的朋友帮个忙,多谢!

PS:已经搜索了论坛的相关帖子了,但是还没有找到答案,听一个朋友说之前在论坛看到过一个帖子有提到,需要读取注册表的信息,利用注册表的项来判断,但是确切的该怎么办呢?如果不要读取注册表,是否有其他更好的办法?
2#
 楼主| 发表于 2008-4-27 20:51:27 | 只看该作者
这个大家觉得太容易还是不可能实现?米人帮下忙?
回复

使用道具 举报

3#
发表于 2008-4-27 20:53:41 | 只看该作者
这个...判断一个文件就是啦
例如boot.ini
if not exist %systemroot%\boot.ini  echo 当前是PE状态&goto ext
echo 当前是xp状态
:ext
pause
回复

使用道具 举报

4#
发表于 2008-4-27 20:54:58 | 只看该作者
如果boot.ini不准
就找个windows目录里面的文件来判断就是了
PE和XP的windows目录中文件相差很大的
回复

使用道具 举报

5#
 楼主| 发表于 2008-4-27 22:16:20 | 只看该作者
原帖由 hytmtet 于 2008-4-27 08:54 PM 发表
如果boot.ini不准
就找个windows目录里面的文件来判断就是了
PE和XP的windows目录中文件相差很大的


boot.ini应该不准的,如果我是进入到pe下,c盘照样还不是有boot.ini的存在,如果原来已经存在操作系统的话

pe的windows目录?有的pe就没有windows目录的。

现在的pe基本用的x盘,如果判断是否存在x盘不知道是否可行,不过准确性还是不太好吧
回复

使用道具 举报

6#
发表于 2008-4-27 22:24:38 | 只看该作者
判断%SystemRoot%\System32\config下面是否存在注册表system,除了BT的淫,否则正常的pe下面不会有system这个注册表。
if not exist %systemroot%\system32\config\system goto pe
:xp
....
goto end
:pe
....
:end
...

[ 本帖最后由 netwinxp 于 2008-4-27 10:46 PM 编辑 ]

评分

参与人数 1无忧币 +10 收起 理由
jonson_qf + 10 多谢指教,我尝试下,

查看全部评分

回复

使用道具 举报

7#
发表于 2008-4-27 22:29:17 | 只看该作者
if的命令用的不错3楼的哥们^_^
回复

使用道具 举报

8#
发表于 2008-4-27 22:31:58 | 只看该作者
if else也可以写出来吧
回复

使用道具 举报

9#
发表于 2008-4-27 22:35:40 | 只看该作者
这个...判断一个文件就是啦
例如boot.ini
@echo off
if not exist %SystemDrive%\boot.ini  echo 当前是PE状态&goto ext
echo 当前是xp状态
:ext
pause

SystemRoot=c:\windows
boot.ini在c盘艮目录下的

你试试看这个
@echo off
if exist "%SystemDrive%\boot.ini" (echo 系统是xp) ELSE echo 不是xp系统
pause

[ 本帖最后由 edisonvon 于 2008-4-28 09:43 AM 编辑 ]
回复

使用道具 举报

10#
 楼主| 发表于 2008-4-28 00:36:46 | 只看该作者
原帖由 netwinxp 于 2008-4-27 10:24 PM 发表
判断%SystemRoot%\System32\config下面是否存在注册表system,除了BT的淫,否则正常的pe下面不会有system这个注册表。
if not exist %systemroot%\system32\config\system goto pe
:xp
....
goto end
:pe
...


多谢帮忙,我尝试下
回复

使用道具 举报

11#
发表于 2008-4-28 09:43:52 | 只看该作者

回复 #10 tuvw480 的帖子

你的垃圾还做广告,我鄙视你
回复

使用道具 举报

12#
发表于 2008-4-28 13:58:49 | 只看该作者
原帖由 jonson_qf 于 2008-4-27 10:16 PM 发表


boot.ini应该不准的,如果我是进入到pe下,c盘照样还不是有boot.ini的存在,如果原来已经存在操作系统的话

pe的windows目录?有的pe就没有windows目录的。

现在的pe基本用的x盘,如果判断是否存在x盘 ...


---------------------------

%SystemRoot%和C盘无关,它是指当前使用的系统所属的windows目录。

pe是x盘,那就是x:\windows
回复

使用道具 举报

13#
发表于 2008-4-28 18:55:54 | 只看该作者
systemroot和systemdrive都是变量
判断boot.ini也比较准确的
就目前来讲
还没见过PE的根目录有boot.ini的
在3楼的时候笔误写成了systemroot
也就是x:\wxpe目录或c:\windows目录之类的
系统盘分区根目录是
systemroot


不同系统中这变量代表的值当然也不一样
回复

使用道具 举报

14#
发表于 2008-4-28 19:28:54 | 只看该作者
原帖由 hytmtet 于 2008-4-28 18:55 发表
systemroot和systemdrive都是变量
判断boot.ini也比较准确的
就目前来讲
还没见过PE的根目录有boot.ini的
在3楼的时候笔误写成了systemroot
也就是x:\wxpe目录或c:\windows目录之类的
系统盘分区根目录是 ...

非RAM硬盘PE启动盘也可能是C(主要看winnt.sif里面的osloader后面的参数),所以判断boot.ini是考虑不周滴。

[ 本帖最后由 netwinxp 于 2008-4-28 07:30 PM 编辑 ]
回复

使用道具 举报

15#
发表于 2008-5-3 18:04:39 | 只看该作者
没试过VER在PE下的提示是什么,应该用这个最准吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-4-26 21:45

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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