无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 2687|回复: 8
打印 上一主题 下一主题

[已解决]PECMD-V3.0.159.232使用过程中的一个小问题

[复制链接]
跳转到指定楼层
1#
发表于 2008-4-19 22:50:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今晚,无聊没事干,就下载了PECMD-V3.0.159.232.RAR回来更新一下,但使用过程中发现一个小问题
  1. //设置虚拟内存,步骤3。
  2. _SUB SetPageDrv3
  3.         TEAM TEXT 正在设定虚拟内存(虚拟内存存放在 %TARGET_DRIVE% 盘)……|PAGE %TARGET_DRIVE%\%PF% 256 512
  4.         //标志已经设置虚拟内存。由于直接判断%TARGET_DRIVE%\%PF%是否存在始终无法正确运行,这里只有搬用毛桃这条语句。终于明白毛桃为什么要搞这么麻烦来判断虚拟内存。
  5.         TEAM EXEC !=CMD.EXE /C ECHO IF EXIST %TARGET_DRIVE%\%PF% PECMD LINK %Temp%\RPT_OK,%WinDir%>%TEMP%\RPT_OK.CMD|EXEC !=%TEMP%\RPT_OK.CMD
  6.         IFEX %Temp%\RPT_OK.LNK,!TEXT 无法设置虚拟内存,目标磁盘只读或有错……
  7. _END
  8. //设置虚拟内存,步骤2。
  9. _SUB SetPageDrv2
  10.         //设置前先做一些测试。测试如果失败就标志不设置虚拟内存。
  11.         TEAM EXEC !=CMD.EXE /C ECHO 测试是否可写。>"%TARGET_DRIVE%\%PF%"|ENVI ISSETPF=Yes|ENVI ERROR=0|FILE %TARGET_DRIVE%\%PF%
  12.         FIND $ERROR=0,!ENVI ISSETPF=No
  13.         //如果目标盘是X:盘就标志不设置虚拟内存。以后修改PE核心时要注意此项。
  14.         //====================================================================================================
  15.         FIND $TARGET_DRIVE=X:,ENVI ISSETPF=No
  16.         //====================================================================================================
  17.         FIND $ISSETPF=Yes,CALL SetPageDrv3!TEXT 无法设置虚拟内存,目标磁盘只读或有错……
  18. _END
  19. //设置虚拟内存,步骤1。
  20. _SUB SetPageDrv1
  21. TEAM TEXT 正在设定虚拟内存……|ENVI $TARGET_ROOT=
  22. BROW * $请选择虚拟内存文件存放的分区。
  23.         FIND $TARGET_ROOT=,TEXT 放弃设定虚拟内存……!CALL SetPageDrv2
  24. _END
  25. //询问是否设定虚拟内存。
  26. _SUB IFSetPageFile
  27. TEAM TEXT 是否设置虚拟内存?|ENVI YESNO=YES
  28. MESS 您的计算机物理内存较少,某些外置程序的运行可能需要用到\n虚拟内存。设置了虚拟内存,有助于提高系统的速度和稳定性;\n \n设置虚拟内存会重置目标磁盘根目录上的%PF%文件。\n如果您需要保护并恢复硬盘分区数据,可跳过虚拟内存的设置。\n \n您确定要设置虚拟内存吗?(建议设置,30 秒后默认选择否)@设置虚拟内存 #YN *30000 $N
  29. FIND $YESNO=YES,Call SetPageDrv1!TEXT 没有建立虚拟内存……
  30.        WAIT 500
  31. _END
  32. //物理内存低于 256MB 时询问是否设定虚拟内存。
  33. FIND MEM<256,CALL IFSetPageFile
复制代码
上面这段是设置虚拟内存的,当我选择是之后,并没有像以前一样设置,而是显示没有建立虚拟内存。希望老九帮忙看一下。
这段是使用小小强pe中设置虚拟内存的代码,旧版pecmd可以正常使用

[ 本帖最后由 421062724 于 2008-4-20 11:43 AM 编辑 ]
2#
发表于 2008-4-19 23:12:09 | 只看该作者
//设置虚拟内存
_SUB SetPageFile
   ENVI V1=你的计算机物理内存较低,某些外置程序的运行可能需要用到
   ENVI V2=虚拟内存。设置了虚拟内存可以提高系统的速度和稳定性;
   ENVI V3=如果你需要保护并恢复硬盘分区数据可跳过虚拟内存的设置。
   ENVI V4=你确定要设置虚拟内存吗?(建议设置)
   ENVI V5=设置虚拟内存
   MESS %V1%\n%V2%\n%V3%\n%V4%@%V5%#YN*20000
   FIND $%YESNO%=YES,PAGE D:\PEpagefile.sys 256 512
   TEAM ENVI V1=|V2=|V3=|V4=|V5=
_END

//物理内存低于 256MB 时询问是否设定虚拟内存。
FIND MEM<257,CALL SetPageFile
回复

使用道具 举报

3#
发表于 2008-4-19 23:14:57 | 只看该作者
换成上面的这段就行了,看看。
┣━━┿━━┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
┃    │格式│PAGE <页面文件路径> <初始大小> [最大值]                                                     ┃
┃    ├──┼──────────────────────────────────────────────┨
┃    │功能│设置页面文件(虚拟内存)。                                                                    ┃
┃    ├──┼──────────────────────────────────────────────┨
┃    │参数│■指定页面文件的路径,只能用 DOS 8.3 格式的路径,如"C:\PageFile.sys"。                      ┃
┃    │    │■初始大小和最大值的单位是 MB;当省略最大值时,自动设置 最大值=初始大小。                   ┃
┃    ├──┼──────────────────────────────────────────────┨
┃PAGE│示例│PAGE C:\PAGEFILE.SYS 128 256                                                                ┃
┃    ├──┼──────────────────────────────────────────────┨
┃    │备注│※如果设置了页面文件,则该分区将无法执行格式化等操作。                                      ┃
┃    │    │※当 可用内存>初始大小 时,本命令将不设置页文件,即可以定义初始大小来作为设置页文件的条件。 ┃
┃    │    │※该命令有智能化功能,即从你定义的页面文件名(含盘符)所在的分区起开始搜索符合条件(硬盘和容量)┃
┃    │    │  分区来设置页文件,避开速度慢的U盘和移动硬盘。以U盘或移动硬盘启动时,可能配置文件定义的页文┃
┃    │    │  件就在U盘或移动硬盘。经一轮搜索若没有找到符合条件的硬盘分区设置页文件才利用U盘或移动硬盘来┃
┃    │    │  设置页文件。
                                                                              ┃
┣━━┿━━┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫


注意说明, PAGE命令有智能了。你的机器内存大于256,所以不建立。
回复

使用道具 举报

4#
发表于 2008-4-19 23:17:03 | 只看该作者
$TARGET_ROOT 和  TARGET_DRIVE 在新版中也不属于内置变量了,需要ENVI一下
回复

使用道具 举报

5#
 楼主| 发表于 2008-4-20 09:53:05 | 只看该作者
智不智能话是一个问题,我说的是find那里的问题,按道理来说的话,我按了yes后,就会开始设置虚拟内存,但现在我按了yes后确不像以前一样进入设置虚拟内存那里,而是直接显示后面的没有设置虚拟内存。
回复

使用道具 举报

6#
发表于 2008-4-20 11:38:31 | 只看该作者
原帖由 421062724 于 2008-4-20 09:53 AM 发表
智不智能话是一个问题,我说的是find那里的问题,按道理来说的话,我按了yes后,就会开始设置虚拟内存,但现在我按了yes后确不像以前一样进入设置虚拟内存那里,而是直接显示后面的没有设置虚拟内存。


FIND、IFEX命令分别用于比较环境变量和数值变量时,一律用前导"$"+带"%"的变量表示,如:
比较字符变量:FIND $%List2%=%W800H600B32F75%,DISP W800H600B32F75
比较数值变量:IFEX $%ErrorCount%<5,ENVI @Label1=%ErrorCount%!CALL ShutSystem
回复

使用道具 举报

7#
 楼主| 发表于 2008-4-20 11:41:26 | 只看该作者
谢谢老九百忙之中来帮忙看看,刚刚自己解决了问题。不过花了点时间>_<
回复

使用道具 举报

8#
 楼主| 发表于 2008-4-20 11:49:22 | 只看该作者
我已经改好了,谢楼上的行了不
回复

使用道具 举报

9#
发表于 2008-4-26 23:49:52 | 只看该作者
原帖由 421062724 于 2008-4-20 11:49 AM 发表
我已经改好了,谢楼上的行了不

改了哪几个地方啊,我这菜的人还没明白怎么改。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-3-1 06:56

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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