标题: 请教:怎样让VBS检测内存后输出一个返还值让BAT检测,
[打印本页]
作者: cjfcjf222
时间: 2007-2-23 07:23
标题: 请教:怎样让VBS检测内存后输出一个返还值让BAT检测,
怎样让VBS检测内存后输出一个返还值让BAT检测,
VBS内存检测如下
strComputer = "localhost"
Set wbemServices = GetObject("winmgmts:\\" & strComputer)
Set wbemObjectSet = wbemServices.InstancesOf("Win32_LogicalMemoryConfiguration")
For Each wbemObject In wbemObjectSet
WScript.Echo wbemObject.TotalPhysicalMemory
Next
我原来的BAT文件
for /f %%i in ('"cscript //nologo 内存.vbs"') do if %%i LSS 150000 goto 128
for /f %%i in ('"cscript //nologo 内存.vbs"') do if %%i LSS 280000 goto 256
for /f %%i in ('"cscript //nologo 内存.vbs"') do if %%i LSS 400000 goto 384
for /f %%i in ('"cscript //nologo 内存.vbs"') do if %%i LSS 550000 goto 524
for /f %%i in ('"cscript //nologo 内存.vbs"') do if %%i LSS 800000 goto 780
for /f %%i in ('"cscript //nologo 内存.vbs"') do if %%i LSS 1100000 goto 1G
goto x
然而运行太慢,如果是大内存,要运行VBS好多次,是修改BAT还是修改VBS,请教各位了
作者: slore
时间: 2007-2-23 08:24
for /f %%i in ('"cscript //nologo 内存.vbs"') do set TPM=%%i
if %TPM% LSS 150000 goto 128
if %TPM% LSS 150000 goto 128
if %TPM% LSS 280000 goto 256
if %TPM% LSS 400000 goto 384
if %TPM% LSS 550000 goto 524
if %TPM% LSS 800000 goto 780
if %TPM% LSS 1100000 goto 1G
goto x
不知道可以不……
作者: cjfcjf222
时间: 2007-2-23 08:37
谢谢你,我试一下
作者: cjfcjf222
时间: 2007-2-23 08:44
好用了,太谢谢你了,这样就可以只运行一次VBS,我用于自动修改虚拟内存的
作者: zh159
时间: 2007-2-23 09:24
稍稍简化 2 楼的:
for /f %%i in ('"cscript //nologo 内存.vbs"') do (
if %%i LSS 150000 goto 128
if %%i LSS 280000 goto 256
if %%i LSS 400000 goto 384
if %%i LSS 550000 goto 524
if %%i LSS 800000 goto 780
if %%i LSS 1100000 goto 1G
goto x
)
PS:一般不建议用%temp%、%tmp%变量(系统默认为临时文件夹路径变量)
作者: slore
时间: 2007-2-23 10:18
TPM=TotalPhysicalMemory
汗~
作者: zh159
时间: 2007-2-23 15:18
Quote: |
Originally posted by slore at 2007-2-22 21:18:
TPM=TotalPhysicalMemory
汗~ |
|
看错-_-|||