批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程
[批处理文件精品]批处理版照片整理器[批处理文件精品]纯批处理备份&还原驱动在线第三方下载
返回列表 发帖

【练习题】VBS判断指定日志文件是否定时更新并发送邮件通知

假设有一个应用程序C:\test.exe在不断地向日志文件C:\test.log里面写入运行记录、报错信息等。

要求写一个VBS脚本:每隔10分钟检测一次C:\test.log,如果发现该文件超过15分钟没有更新,就认为C:\test.exe死掉了,这时需要重启C:\test.exe,并发送邮件给指定用户batcher@bbs.bathome.net以实现报警功能。
【批处理在线视频分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

我帮忙写的代码不需要付钱,不用找我要支付宝或微信账号。如果一定要给,请到微信群给大家发红吧。

有点问题...每隔10分钟检测一次,超过15分钟没有更新,那就是连续三次一样咯?(就是20分钟没有更新)
还是直接判断文件修改时间?

TOP

  1. On Error Resume Next
  2. Dim f,d
  3. Set f=CreateObject("Scripting.FileSystemObject").GetFile("C:\test.log")
  4. Do
  5. WScript.Sleep 600000
  6. d=DateDiff("n",f.DateLastModified,Now())
  7. If d>14 then
  8. CreateObject("WScript.Shell").Run "C:\test.exe"
  9. Send_mail
  10. End If
  11. Loop
  12. Sub Send_mail()
  13. MS_Space = "http://schemas.microsoft.com/cdo/configuration/"
  14. Set Email = CreateObject("CDO.Message")
  15. Email.From = "yonghuming@sina.com"
  16. Email.To = "batcher@bbs.bathome.net"
  17. Email.Subject = "报警"
  18. Email.Textbody = "报警啦报警啦!"
  19. With Email.Configuration.Fields
  20. .Item(MS_Space&"sendusing") = 2
  21. .Item(MS_Space&"smtpserver") = "smtp.sina.com"
  22. .Item(MS_Space&"smtpserverport") = 25
  23. .Item(MS_Space&"smtpauthenticate") = 1
  24. .Item(MS_Space&"sendusername") = "yonghuming"
  25. .Item(MS_Space&"sendpassword") = "mima"
  26. .Update
  27. End With
  28. Email.Send
  29. Set Email=Nothing
  30. End Sub
复制代码
VBS不是很懂,可?

[ 本帖最后由 Seter 于 2009-10-4 07:47 编辑 ]

TOP

返回列表