|  | 
| cmd+ini 版本 代码: 更新增加一个 分区可用空间的信息,用到 diskpart ,注意红色部分代码是更新的部分。
 硬盘分区探测阶段会占用一段时间.另外 pecmd 用到 lstr 需要 pecmd 20110405版本。
 diskpart 要 win7 的。
 
 @ECHO OFF &setlocal ENABLEDELAYEDEXPANSION
 rem 调用 pecmd 设置PE系统虚拟内存 @dos时代菜鸟 2011.04.26
 TITLE 设置虚拟内存
 mode con: cols=40 lines=2
 color f0
 echo 请不要关闭本窗口,正在探测分区.....
 SET MEM_Y=%1
 IF %MEM_Y%*==* SET MEM_Y=1024
 SET MEM_X=128^|256^|512^|1024^|2048^|3072^|4096^|!MEM_Y!
 FOR %%C IN (W V U T S R Q P O N M L K J I H G F E D C) DO (
 IF EXIST %%C:\ (
 echo.>%temp%\p.p
 >>%temp%\p.p echo select volume %%C
 >>%temp%\p.p echo detail volume
 for /f "delims=: tokens=1,2*" %%i in ('diskpart /s %temp%\p.p') do  set xyz=%%j
 set DRV=%%C:  !xyz!^|!DRV!
 SET LD=%%C:
 pecmd FILE %%C:\PAGEFILE.SYS
 )
 )
 if exist %temp%\p.p del %temp%\p.p /q
 
 echo 请不要关闭本窗口,请设置虚拟内存.....
 
 >  %TEMP%\SET_PAGEFILE.INI ECHO _SUB Windows1,W460H120,设置虚拟内存
 >> %TEMP%\SET_PAGEFILE.INI ECHO  LABE Label1, L8  T22 W90 H18,分区及可用空间:
 >> %TEMP%\SET_PAGEFILE.INI ECHO  LABE Label2, L26 T52 W90 H18,输入大小(M):
 >> %TEMP%\SET_PAGEFILE.INI ECHO  LIST  Edit1, L100T50 W80 H18,!MEM_X!,ENVI @t1=0,!MEM_Y!
 >> %TEMP%\SET_PAGEFILE.INI ECHO  LABE Label2, L183T52 W80 H18,—
 >> %TEMP%\SET_PAGEFILE.INI ECHO  LIST  Edit2, L200T50 W80 H18,!MEM_X!,ENVI @t1=0,!MEM_Y!
 >> %TEMP%\SET_PAGEFILE.INI ECHO  ITEM Button1,L295T22 W150H48,确  定,call set_page
 >> %TEMP%\SET_PAGEFILE.INI ECHO  LIST  List1, L100T20 W180H32,!DRV!,ENVI @t1=0,!LD!
 >> %TEMP%\SET_PAGEFILE.INI ECHO  time t1,10000,call set_page
 >> %TEMP%\SET_PAGEFILE.INI ECHO _END
 
 >> %TEMP%\SET_PAGEFILE.INI ECHO _SUB set_page
 >> %TEMP%\SET_PAGEFILE.INI ECHO  ENVI @t1=0
 >> %TEMP%\SET_PAGEFILE.INI ECHO  LSTR L1=2,%%List1%%
 >> %TEMP%\SET_PAGEFILE.INI ECHO  PAGE %%L1%%\PAGEFILE.SYS %%edit1%% %%edit2%%
 >> %TEMP%\SET_PAGEFILE.INI ECHO  FORX %%L1%%\PAGEFILE.SYS,PF,0,TEAM EXEC =PECMD MESS PAGE %%PF%% %%edit1%% %%edit2%%\n 虚拟内存设置成功!@恭喜 #OK *5000 ^| KILL \设置虚拟内存 ^|EXIT _SUB
 >> %TEMP%\SET_PAGEFILE.INI ECHO  EXEC =PECMD MESS PAGE %%L1%%\PAGEFILE.SYS %%edit1%% %%edit2%%\n 虚拟内存设置无效!@通知 #OK
 >> %TEMP%\SET_PAGEFILE.INI ECHO _END
 
 >> %TEMP%\SET_PAGEFILE.INI ECHO CALL @Windows1
 
 
 START /B /WAIT PECMD LOAD %TEMP%\SET_PAGEFILE.INI
 echo 脚本运行完毕!
 for %%c in (drv mem_x MEM_Y ld xyz) do set %%c=
 EXIT
 
 [ 本帖最后由 dos时代菜鸟 于 2011-4-27 08:04 编辑 ]
 | 
 |