1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110 | IFEX X.LOG, LOGS * X.LOG
WIN1
_SUB WIN1,W510H280,虚拟内存与临时文件设置,,
TEAM ENVI^ ForceLocal=1| ENVI^ EnviMode=1
SET &::WM_LBUTTONDOWN=0x0201
SET &WM_COMMAND=0x0111
SET &EN_CHANGE=0x0300
SET-def DrvVolDat=
SET$ &NL=0d 0a
SET$ &TAB=09
SET-def ALlDrv=
FDRV &&ALlDrv1=*:
SET-def ALlDrv2=
forx * %ALlDrv1%, &&drv1,
{
FORM -raw &&V=%drv1%
FIND $%V%=DRIVE_FIXED,SET ALlDrv=%ALlDrv% %drv1% ! EXIT //只有硬盘
FIND $X=X%ALlDrv2%,SET ALlDrv2=%drv1%!SET ALlDrv2=%ALlDrv2%|%drv1%
}
REGI *$HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PagingFiles,&&PAGES
forx * %ALlDrv%,&&drv1,
{*
FDRV *vol &&vol1=%drv1%
FIND %drv1%\=?,&&C1 //总空间
IFEX %drv1%\=?,&&C2 //可用空间
CALC #C1 = %C1%/1024/1024
CALC #C2 = %C2%/1024/1024
FIND $%DrvVolDat%=,!SET DrvVolDat=%DrvVolDat%%NL%
@ TEAM SET-def Ini=|SET-def Max=|SET-def FixM=
FORX *NL &PAGES,&&DRVK,
{
LSTR &&C=2,%DRVK%
FIND $%C%=%drv1%,TEAM MSTR Ini,Max=<2><3>%DRVK%|SET FixM=%Ini%/%Max%
}
SET DrvVolDat=%DrvVolDat%%drv1%%TAB%%vol1%%TAB%%FixM%%TAB%%C1%%TAB%%C2%
}
SET &TITLE=+40:盘符%TAB%=100:卷标%TAB%=150:虚拟内存最小/最大值(MB)%TAB%=82:总空间(MB)%TAB%=82:可用空间(MB)
ITEM ITEM7,L445T217W45H25,确定,CALL SetPE,
TABL TABL2,L15T20W475H150,%TITLE%,%DrvVolDat%,0x10040
EDIT TMPDir,L95T220W280H20,%TMPDir%,CALL OnTimer1,0x100
ENVI @TMPDir.ID=?;&TMPDir_ID
ENVI @this.visable=1
ENVI @TABL2.MSG=_%&::WM_LBUTTONDOWN%:CALL OnTable
ENVI @TABL2.Val=?1.1;&&V1
ENVI TMPDir=
LABE -vcenter LABE2,L15T185W80H23,虚拟内存位置:,,
LIST ListDrv,L95T186W40H143,%ALlDrv2%,,%V1%,
LABE -vcenter LABE3,L160T185W65H23,最小值(MB):,,
LIST LISTInit,L230T187W84H130,256|512|1000|2000|3000,,512,0x4
LABE -center -vcenter LABE4,L335T187W70H21,最大值(MB):,,
LIST LISTMax,L406T187W84H130,256|512|1000|2000|3000|4000|5000|6000|7000|8000,,512,0x4
LABE -center -vcenter LABE5,L15T220W80H21,临时文件位置:,,
SET-def TMPDir_Enable=1
ITEM BUTDIR,L380T220W40H20,...,CALl SearchDir,
SET-def bt=1
ENVI @this.MSG=_%&WM_COMMAND%::&&wp,&&lp, CALL OnCommand //捕捉内容改变
TEAM TIME T2,0, CALL OnTimer1 //没开启哦. 用于延时执行
_END
_SUB OnCommand
CALC -base=16 #&&ID=%&wp% % 0x10000 //低16位,控件ID
IFEX $%TMPDir_ID%=%ID%,! EXIT
CALC -base=16 #&&wCode=%&wp% / 0x10000 //高16位,操作码
IFEX $%&EN_CHANGE% = %&wCode%,! EXIT //不是改变
//内容改变,响应
ENVI @T2=10;1 //延时执行
_END
_SUB EnableItem7
@ FIND $%1=%TMPDir_Enable%,! TEAM SET TMPDir_Enable=%1| ENVI @ITEM7.Enable=%1
_END
_SUB OnTimer1
@FIND $""="%TMPDir%",
{
@CALL EnableItem7 1
}!
{
MSTR &&TDir=2,1,%TMPDir%
FIND $":"="%&TDir%",
{
FORM -raw &&TDir=%TMPDir%
FIND $%&TDir%=DRIVE_FIXED, CALL EnableItem7 1! CALL EnableItem7 0
}!
{
CALL EnableItem7 0
}
}
_END
_SUB SearchDir
ENVI &&DIR0=%TMPDir%
BROW &&DIR0,*%TMPDir%,请选择一个目录
FIND $""="%&DIR0%",!ENVI @TMPDir=%&DIR0%\Temp
CALL OnTimer1
_END
_SUB SetPE
TEAM FDIR DIR0=%TMPDir%|ENVI @t1=0|ENVI @t2=0|KILL \
mess "%ListDrv%" "%LISTInit%" "%LISTMax%" "%TMPDir%" "%DIR0%"
_END
_SUB OnTable
ENVI @TABL2.Sel=?&&Sel
IFEX $1>%&Sel%,EXIT
ENVI @TABL2.Val=?%Sel%.1;&&V1
ENVI @ListDrv=%V1%
_END |