http://bbs.csdn.net/topics/230078112
'/************************************************************************/
'
' FileName: WriteUsage.vbs
'
' Author: Chinafish
'
' Email: china_fish@163.com
'
' Homepage: http://www.csinx.org
'
' Desc: Write CPU & Memory usage
'
'/************************************************************************/ On Error Resume Next Dim dwTotalMem, dwAvailMem Const szRootDir = "D:\CPU\" '定时循环记录
Do While True Const ForReading =
Const ForWriting = Set oFSO = CreateObject("Scripting.FileSystemObject") '计算当日记录文件名
Today = Date()
TargetFile = szRootDir & Year(Today) & Right("" & Month(Today),) & Right("" & Day(Today),) & ".log" '没有文件先创建文件
Set MyFile = oFSO.CreateTextFile(TargetFile, false)
MyFile.Close '打开创建的文件读出原来的内容
Set MyFile = oFSO.OpenTextFile(TargetFile, ForReading)
strContent = MyFile.ReadAll
MyFile.Close '先写原文件内容
Set MyFile = oFSO.OpenTextFile(TargetFile, ForWriting) '文件无内容时写文件头
if strContent <> "" then
MyFile.WriteLine(strContent)
else
MyFile.WriteLine("/*Usage.log file write by Chinafish.*/")
MyFile.WriteBlankLines
End if '写开始时间
MyFile.WriteLine("程序启动时间: " & Now()) '本地电脑
strComputer = "." '连接到本地电脑
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.InstancesOf("Win32_LogicalMemoryConfiguration") '总计物理内存
For Each colItem In colItems
dwTotalMem = CLng(colItem.TotalPhysicalMemory / )
MyFile.WriteLine("总计物理内存: " & CLng(colItem.TotalPhysicalMemory / ) & "MB")
Next '剩余内存
Set colItems = objWMIService.ExecQuery("Select * from Win32_PerfRawData_PerfOS_Memory",,) For Each objItem in colItems
dwAvailMem = objItem.AvailableMBytes
MyFile.WriteLine("剩余物理内存: " & objItem.AvailableMBytes & "MB")
Next '物理内存使用率(第一行精确到小数后2位, 第二行取整数)
'MyFile.WriteLine("物理内存使用: " & CInt((1 - dwAvailMem/dwTotalMem)*100*100)/100 & "%")
MyFile.WriteLine("物理内存使用: " & CInt(( - dwAvailMem/dwTotalMem)*) & "%") 'CPU数和使用率
Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor",,)
i = For Each objItem in colItems
MyFile.WriteLine("CPU(" & i & ")使用率: " & objItem.LoadPercentage & "%")
i = i +
Next '写结束时间
MyFile.WriteLine("程序结束时间: " & Now())
MyFile.Close Set oFSO = Nothing
Set MyFile = Nothing '睡眠达到定时操作目的 参数是ms 1000是1秒
WScript.Sleep ** Loop

自行修改版。

On Error Resume Next

Dim dwTotalMem, dwAvailMem

Const szRootDir = "D:\CPU\"

Set oFSO = CreateObject("Scripting.FileSystemObject")

    Const ForReading =
Const ForWriting = '计算当日记录文件名
Today = Date()
TargetFile = szRootDir & Year(Today) & Right("" & Month(Today),) & Right("" & Day(Today),) & Hour(Now) & ".log" '没有文件先创建文件
Set MyFile = oFSO.CreateTextFile(TargetFile, false)
MyFile.Close Set MyFile = oFSO.OpenTextFile(TargetFile, ForWriting) '写开始时间
MyFile.WriteLine("程序启动时间: " & Now()) '本地电脑
strComputer = "." '连接到本地电脑
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.InstancesOf("Win32_LogicalMemoryConfiguration") '总计物理内存
For Each colItem In colItems
dwTotalMem = CLng(colItem.TotalPhysicalMemory / )
MyFile.WriteLine("总计物理内存: " & CLng(colItem.TotalPhysicalMemory / ) & "MB")
Next '剩余内存
Set colItems = objWMIService.ExecQuery("Select * from Win32_PerfRawData_PerfOS_Memory",,) For Each objItem in colItems
dwAvailMem = objItem.AvailableMBytes
MyFile.WriteLine("剩余物理内存: " & objItem.AvailableMBytes & "MB")
Next 'CPU数和使用率
Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor",,)
i = For Each objItem in colItems
MyFile.WriteLine("CPU(" & i & ")使用率: " & objItem.LoadPercentage & "%")
i = i +
Next MyFile.Close Set oFSO = Nothing
Set MyFile = Nothing

VBS windows监控的更多相关文章

  1. vbs系统监控

    vbs CPU 内存 硬盘监控脚本 On Error Resume Next Dim dwTotalMem, dwAvailMem, totalvolumn, freespace Const szRo ...

  2. 16 利用Zabbix完成windows监控

    点击返回:自学Zabbix之路 16 利用Zabbix完成windows监控 1.安装zabbix_agentd 1.1.下载zabbix_agentd监控客户端软件安装包(windows操作系统客户 ...

  3. windows 监控

    监控time_wait状态tcp/ip连接 > netstat -an | findstr "TIME_WAIT" 如果监控此值发现量比较大,且有类似socketExcept ...

  4. zabbix 自定义 windows 监控项

    zabbix获取windows服务器上数据C:\zabbix_agents\conf\zabbix_agentd.win.confUserParameter=conncount,d:\\tools\\ ...

  5. spotlight on windows 监控

    1. spotlight on windows 安装 下载 https://pan.baidu.com/s/1qYi3lec Spotlight大家可以从其官方网站(http://www.quest. ...

  6. windows监控 排查蓝屏问题

    DUMP包分析 工具WinDbg,下载打开,按ctrl+S  输入:SRV*C:\websymbols*http://msdl.microsoft.com/download/symbols:点击OK, ...

  7. 搬运:Python for Windows——监控Windows某个目录下文件的变化

    https://win32com.goermezer.de/content/view/286/285/ 这个网站真是给力,不多说,代码直接搬运过来,还有我的测试结果,拿走不谢! import os i ...

  8. Windows监控——性能指标详解(转)

    http://blog.csdn.net/yiqin3399/article/details/51730106

  9. LR监控Windows资源

    1.监控准备: 监控方: 1)安装tcp/ip协议下的netbios 2)用administrator登录 被监控方: 1)被监控的Windows开启两个服务: Remote ProcedureCal ...

随机推荐

  1. 我的第一篇博文:C++最初的路-经典的小游戏走迷宫

    写在开始:这个博客建于大二下学期.2年多的学习,从网上借鉴的大牛经验,代码,指导数不胜数,而其中大部分来自别人的博客,于是期待有一天也能把自己在学习过程中的一些经验拿出来与大家分享. 其实我凝望了C+ ...

  2. tomcat 修改为自己项目界面

    修改Tomcat欢迎界面为自己项目界面 Posted on 2011-04-16 13:10 IceWee 阅读(1062) 评论(0)  编辑  收藏 所属分类: Tomcat  由于项目要发布到互 ...

  3. Linux程序设计之shell程序设计

    看了<linux程序设计(第4版)>(作者:Neil Matthew ,Richard Stones ,陈建 ,宋健建译).做个笔记,以备后面查看. 首先,清楚几个概念. shell编程属 ...

  4. jsp: c:foreach 输出序号

    关键在于<c:forEach>的varStatus属性,具体代码如下: <table width="500" border="0" cells ...

  5. 对称加密详解,以及JAVA简单实现

    (原) 常用的加密有3种 1.正向加密,如MD5,加密后密文固定,目前还没办法破解,但是可以能过数据库撞库有一定概率找到,不过现在一般用这种方式加密都会加上盐值. 2.对称加密,通过一个固定的对称密钥 ...

  6. docker~大叔对术语的解释

    回到目录 接触和使用docker已经有1年多了,起初对概念本身理解的不是很好,或者说,没有找到一本比较好的书,在自己的研究下,对docker一些基本的概念有了自己的一些认识和看法,现在分享给正在学习d ...

  7. 教你做炫酷的碎片式图片切换 (canvas)

    前言 老规矩,先上 DEMO 和 源码.图片区域是可以点击的,动画会从点击的位置开始发生. 本来这个效果是我3年前做的,只是当是是用无数个 div 标签完成的,性能比较成问题,在移动端完全跑不动.最近 ...

  8. (转)rpm安装和卸载软件

    场景:在Linux中经常需要安装一些rpm软件,但是有时候安装失误就需要卸载这些软件包. 1 过程记录 1.1 安装 rpm -i 需要安装的包文件名 举例如下: rpm -i example.rpm ...

  9. Unity Shader入门教程(二)最基本的Diffuse和Normal样例

    本教程参考了<猫都能学会的Unity3dShaderLab教程.CHM>, 1.请上网搜索并下载此文件. 2.随后再下载里面提到的素材: http://vdisk.weibo.com/s/ ...

  10. 老生常谈之SQL Server (行转列,列转行)

    Open the first article 在本文章中主要介绍以下内容: 1.静态行转列 2.静态列转行 3.动态行转列 4.动态列转行 1.静态行转列 --静态的行转列 --新建一个科目成绩表 - ...