最近用户有个需求,需要监控文件夹下面文件的数量。如果超过一定的阀值需要发MAIL@H_301_3@预警。从网上找了些VBScript@H_301_3@的代码然后自己修改了一下就可以了。@H_301_3@
@H_301_3@
@H_301_3@
strMessage="Filenumbermorethan10,pleasecheck"@H_301_3@
strTo="sample@home.cn"@H_301_3@
strFrom="sample@home.cn"@H_301_3@
strSubject="Filenumbermorethan10,pleasecheck"@H_301_3@
strSMTPServer="smtp.home.cn"'--smtp@H_301_3@地址
@H_301_3@
strComputer="."@H_301_3@
@H_301_3@
SetobjWMIService=GetObject("winmgmts:\\"&strComputer&"\root\cimv2")@H_301_3@
@H_301_3@
DoWhileTrue@H_301_3@
SetcolFileList=objWMIService.ExecQuery_@H_301_3@
("ASSOCIATORSOF{Win32_Directory.Name='D:\sample\'}Where"_@H_301_3@
&"ResultClass=CIM_DataFile")@H_301_3@
@H_301_3@
IfcolFileList.Count>=10Then@H_301_3@
SendMailstrFrom,strTo,strSubject,strMessage,strSMTPServer@H_301_3@
ExitDo@H_301_3@
EndIf@H_301_3@
@H_301_3@
Wscript.Sleep600000'--@H_301_3@一小时
Loop@H_301_3@
@H_301_3@
'@H_301_3@使用SMTP@H_301_3@服务器发送邮件
FunctionSendMail(strFrom,strSendTo,strSMTP)@H_301_3@
@H_301_3@
SetoEmail=CreateObject("CDO.Message")@H_301_3@
@H_301_3@
'configuremessage@H_301_3@
WithoEmail.Configuration.Fields@H_301_3@
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing")=2@H_301_3@
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")=25@H_301_3@
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver")=strSMTP@H_301_3@
.item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate")=0'@H_301_3@不执行验证
.Update@H_301_3@
EndWith@H_301_3@
@H_301_3@
'buildmessage@H_301_3@
WithoEmail@H_301_3@
.From=strFrom@H_301_3@
.To=strSendTo@H_301_3@
.Subject=strSubject@H_301_3@
.TextBody=strMessage@H_301_3@
EndWith@H_301_3@
@H_301_3@
'sendmessage@H_301_3@
OnErrorResumeNext@H_301_3@
oEmail.Send@H_301_3@
IfErrThen@H_301_3@
WScript.Echo"SendMailFailed:"&Err.Description@H_301_3@
EndIf@H_301_3@
@H_301_3@
EndFunction@H_301_3@
原文链接:https://www.f2er.com/vb/258707.html