无忧启动论坛

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

PE启动完毕后%CurDrv%变量就失效了吗?

[复制链接]
跳转到指定楼层
1#
发表于 2010-8-23 08:47:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想在PE启动完毕后仍然使用%CurDrv%变量,但不行。不知有没有什么办法能继续使用%CurDrv%变量???请各位大虾指点。
2#
发表于 2010-8-23 09:06:45 | 只看该作者
可以使用setx把它设置为系统环境变量
回复

使用道具 举报

3#
发表于 2010-8-23 09:08:24 | 只看该作者
2楼说的对,可以设置环境变量,这样就可以了。
回复

使用道具 举报

4#
 楼主| 发表于 2010-8-23 09:50:25 | 只看该作者
ones 上校:请问用SETX如何设置???我把以下两行建了一个YLH.CMD文件,然后在内置程序的配置文件中调用不行。内容为:

SET YLH=%CurDrv%
EXIT

难道要在PECMD.ini中调用??
回复

使用道具 举报

5#
 楼主| 发表于 2010-8-23 09:51:05 | 只看该作者
也请renchmin 大校指点下该如何做?
回复

使用道具 举报

6#
 楼主| 发表于 2010-8-23 09:55:04 | 只看该作者
我在内置程序的配置文件中是这样调用的:
MOUN WXRS.WIM,Y:\WXRS\,1,%TEMP%
ENVI OPDir=Y:\WXRS
EXEC =!%OPDir%\PE_OUTERPART2\YLH.CMD
回复

使用道具 举报

7#
发表于 2010-8-23 11:46:37 | 只看该作者
PECMD.ini

ENVI $YLH=%CurDrv%
回复

使用道具 举报

8#
 楼主| 发表于 2010-8-23 13:35:18 | 只看该作者

回复 #7 neo4026 的帖子

neo4026
    我试了还是不行

1.jpg (34.67 KB, 下载次数: 87)

1.jpg
回复

使用道具 举报

9#
 楼主| 发表于 2010-8-23 14:59:53 | 只看该作者
PE里面依然没有YLH变量

4545.jpg (124.63 KB, 下载次数: 85)

4545.jpg
回复

使用道具 举报

10#
发表于 2010-8-24 00:52:18 | 只看该作者
这可能是pecmd和wincmd的一个BUG,在非PE系统用wincmd设置系统变量要注销一次才生效,在PE系统用pecmd也应该是这样。用命令:envi 和 envi $ 刷新环境变量也不能生效。

[ 本帖最后由 yjstone 于 2010-8-24 15:20 编辑 ]
回复

使用道具 举报

11#
发表于 2010-8-24 02:29:32 | 只看该作者
可试试间接方法:

echo set YLH=%CurDrv%>%Windir%\System32\YLH.BAT(事前写好的空文件)

然后启动PE后在你需要使用%CurDrv%时:
CALL YLH.BAT
EXEC =!%YLH%\PE_OUTERPART2\XXX.CMD
回复

使用道具 举报

12#
 楼主| 发表于 2010-8-24 15:38:21 | 只看该作者
难道没有办法保存%CurDrv%变量的值吗???有没有其他办法实现????
回复

使用道具 举报

13#
 楼主| 发表于 2010-8-24 17:20:39 | 只看该作者
用了hxj中将的办法,却发现产生的结果是X:盘,但我想要的结果是D:盘。难道%CurDrv%的值是虚拟的X:盘而不是启动的实际物理D:盘???

3424234.jpg (148.45 KB, 下载次数: 47)

3424234.jpg
回复

使用道具 举报

14#
发表于 2010-8-24 19:08:51 | 只看该作者
结果不会是这样的?

注意:
echo set YLH=%CurDrv%>%Windir%\System32\YLH.BAT(事前写好的空文件)
应当写在 UDISK.CMD,然后在PECMD.INI(或其它PECMD.INI中LOAD的INI文件)中调用:
EXEC !=CMD.EXE /C UDISK.CMD

我的杀毒PE光盘中就是用这一笨办法实现定位启动U盘,并调用U盘中杀毒软件到桌面和开始菜单的。

[ 本帖最后由 hxj 于 2010-8-24 19:14 编辑 ]
回复

使用道具 举报

15#
发表于 2010-8-24 21:53:21 | 只看该作者
%CurDrv%

只能理解是当前盘.
回复

使用道具 举报

16#
发表于 2010-8-24 22:09:05 | 只看该作者
原帖由 hxj 于 2010-8-24 19:08 发表
结果不会是这样的?

注意:
echo set YLH=%CurDrv%>%Windir%\System32\YLH.BAT(事前写好的空文件)
应当写在 UDISK.CMD,然后在PECMD.INI(或其它PECMD.INI中LOAD的INI文件)中调用:
EXEC !=CMD.EXE /C  ...



========

老问题了.虽有办法绕圈子解决.但很烦.

希望PECMD能加个启动盘的变量 %MYDRV%

在进桌面的后续加载中.调用启动盘的其他程序...

功德无量的好事.请老九出山啊.
回复

使用道具 举报

17#
 楼主| 发表于 2010-8-24 22:15:54 | 只看该作者
我心如水老大你好!看来我的这个问题目前还无法解决了!!!
回复

使用道具 举报

18#
发表于 2010-8-24 22:47:22 | 只看该作者
以我的理解,对于PE1.X来说,是无法判定PE是从哪一个驱动器来启动的。我目前的方法是在你需要指定的驱动器放一个唯一文件名的INI配置文件(例如MySoft.ini),在调用时用PECMD的命令:LOAD \MYSoft.ini ,PECMD会自动搜索指定的配置文件并加载,然后在MySoft.ini配置文件里,变量%CurDrv%就代表着你所需要找的盘符。

[ 本帖最后由 yjstone 于 2010-8-25 00:55 编辑 ]
回复

使用道具 举报

19#
发表于 2010-8-24 23:02:37 | 只看该作者
原帖由 yanlihua 于 2010-8-24 22:15 发表
我心如水老大你好!看来我的这个问题目前还无法解决了!!!



http://bbs.wuyou.net/forum.php?mod=viewthread&tid=91524&page=318#pid2026167

老九已发话.

11.18楼的方法.你参考下.

我那个网启版.调用DHCP绕圈子...当时也费了不少事才解决的.
回复

使用道具 举报

20#
发表于 2010-11-19 22:23:44 | 只看该作者
请教 66369 (我心如水) :
    你的2003全内置网启特别版如何才能支持如WB5主题,我试了不行?
回复

使用道具 举报

21#
发表于 2011-3-1 23:05:47 | 只看该作者
exec !cmd.exe /c "echo set YLH=%CurDrv%>%Windir%\System32\YLH.BAT"
我将这句写在pecmd.ini文件中就可以了。
要用时,可以用pecmd load ylh.bat这样变量就写好了。
最后发现这个问题可以用PECMD FIND Explorer.EXE,ENVI来解决,出现了mydrv变量了。
参考这里http://bbs.wuyou.net/forum.php?mod=viewthread&tid=155228&highlight=%CF%B5%CD%B3%B1%E4%C1%BF

[ 本帖最后由 jonepjxh 于 2011-3-2 00:09 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-7-6 07:17

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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