华域联盟 vbs 几段非常有用的脚本(来自微软网站,由downmoon精心收集)

几段非常有用的脚本(来自微软网站,由downmoon精心收集)

几段非常有用的脚本(来自微软网站,由downmoon精心收集) 

一、在网络硬件故障或网络故障断开时发送警告 


复制代码 代码如下:

strComputer = "." 

Set objWMIService = GetObject("winmgmts:" & strComputer & " ootwmi") 

Set colMonitoredEvents = objWMIService.ExecNotificationQuery _ 

    ("Select * from MSNdis_StatusMediaDisconnect") 

Do While True 

    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") 

Do While True 

    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 

调用方法示例:cscript 域用户信息.vbs >> F:\test\微软脚本\域用户信息.txt 

四、修改文本文件内容 

复制代码 代码如下:

Const ForReading = 1 

Const ForWriting = 2 

Set objFSO = CreateObject("Scripting.FileSystemObject") 

Set objTextFile = objFSO.OpenTextFile("sample.ini", ForReading) 

Do Until objTextFile.AtEndOfStream 

    strNextLine = objTextFile.Readline 

    intLineFinder = InStr(strNextLine, "UserName") 

    If intLineFinder <> 0 Then 

        strNextLine = "UserName=邀月工作室" 

    End If 

    strNewFile = strNewFile & strNextLine & vbCrLf 

Loop 

objTextFile.Close 

Set objTextFile = objFSO.OpenTextFile("sample.ini", ForWriting) 

objTextFile.WriteLine strNewFile 

objTextFile.Close 

调用方法示例:ModifyFile.vbs

附件:

Sample.ini:


复制代码 代码如下:

[OEM Install] 

ProgGroupName= 

DefaultDestDir= 

UserName= 

UserCompanyName= 

UserSerialNumber= 

五、通过脚本发送电子邮件

从安装了 SMTP Service 的计算机中发送电子邮件的脚本。

脚本代码


复制代码 代码如下:

Set objEmail = CreateObject("CDO.Message") 

objEmail.From = "[email protected]

objEmail.To = "[email protected]

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 = "[email protected]

objEmail.To = "[email protected]

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 

调用方法示例:SendMailNoSMTP.vbs

七、将新的记录添加到数据库中

通过脚本检索计算机声卡的信息,然后将这些信息保存到带有 DSN Inventory 的 ADO 数据库中。


复制代码 代码如下:

Const adOpenStatic = 3 

Const adLockOptimistic = 3 

Const adUseClient = 3 

Set objConnection = CreateObject("ADODB.Connection") 

Set objRecordset = CreateObject("ADODB.Recordset") 

objConnection.Open "DSN=Inventory;" 

objRecordset.CursorLocation = adUseClient 

objRecordset.Open "SELECT * FROM Hardware" , objConnection, _ 

    adOpenStatic, adLockOptimistic 

Set colSoundCards = GetObject("winmgmts:").ExecQuery _ 

    ("Select * from Win32_SoundDevice") 

For Each objSoundCard in colSoundCards 

    objRecordset.AddNew 

    objRecordset("ComputerName") = objSoundCard.SystemName 

    objRecordset("Manufacturer") = objSoundCard.Manufacturer 

    objRecordset("ProductName") = objSoundCard.ProductName 

    objRecordset.Update 

Next 

objRecordset.Close 

objConnection.Close 

调用方法示例:AddOneRecord.vbs

本文由 华域联盟 原创撰写:华域联盟 » 几段非常有用的脚本(来自微软网站,由downmoon精心收集)

转载请保留出处和原文链接:https://www.cnhackhy.com/14444.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部