strComputer ="." Set objWMIService =GetObject("winmgmts:"& strComputer &" ootwmi") Set colMonitoredEvents = objWMIService.ExecNotificationQuery _
("Select * from MSNdis_StatusMediaDisconnect") DoWhileTrue Set strLatestEvent = colMonitoredEvents.NextEvent
Wscript.Echo "A network connection has been lost:"
WScript.Echo strLatestEvent.InstanceName, Now
Wscript.Echo Loop
调用方法示例:cscript 网络断开.vbs >> F:/test/微软脚本/log.txt
二、在网络硬件连接成功或网络故障恢复连接时发送警告
strComputer ="." Set objWMIService =GetObject("winmgmts:"& strComputer &" ootwmi") Set colMonitoredEvents = objWMIService.ExecNotificationQuery _
("Select * from MSNdis_StatusMediaConnect") DoWhileTrue Set strLatestEvent = colMonitoredEvents.NextEvent
Wscript.Echo "A network connection has been made:"
WScript.Echo strLatestEvent.InstanceName, Now
Wscript.Echo Loop
调用方法示例:cscript 网络连接.vbs >> F:/test/微软脚本/log.txt
三、获取所有域用户信息
Const ADS_SCOPE_SUBTREE =2 Set objConnection =CreateObject("ADODB.Connection") Set objCommand =CreateObject("ADODB.Command")
objConnection.Provider ="ADsDSOObject"
objConnection.Open "Active Directory Provider" Set objCOmmand.ActiveConnection = objConnection
objCommand.CommandText = _ "Select Name, Location from 'LDAP://DC=DomainName,DC=com' " _ &"Where objectClass='computer'"
objCommand.Properties("Page Size") =1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst Do Until objRecordSet.EOF
Wscript.Echo "Computer Name: "& objRecordSet.Fields("Name").Value
Wscript.Echo "Location: "& objRecordSet.Fields("Location").Value
objRecordSet.MoveNext Loop
Set objEmail =CreateObject("CDO.Message")
objEmail.From ="monitor1@fabrikam.com"
objEmail.To ="admin1@fabrikam.com"
objEmail.Subject ="Atl-dc-01 down"
objEmail.Textbody ="Atl-dc-01 is no longer accessible over the network."
objEmail.Send
调用方法示例:SendMail.vbs
六、在没有 SMTP Service 的条件下发送电子邮件
脚本设计用来在 Microsoft 的公司网络上进行工作。
Set objEmail =CreateObject("CDO.Message")
objEmail.From ="admin1@fabrikam.com"
objEmail.To ="admin2@fabrikam.com"
objEmail.Subject ="Server down"
objEmail.Textbody ="Server1 is no longer accessible over the network."
objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") =2
objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = _ "smarthost"
objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") =25
objEmail.Configuration.Fields.Update
objEmail.Send