zoukankan      html  css  js  c++  java
  • 几段非常有用的脚本(来自微软网站,由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 
    = "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


    调用方法示例: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

    邀月注:本文版权由邀月和博客园共同所有,转载请注明出处。
    助人等于自助!  3w@live.cn
  • 相关阅读:
    Sqli-labs Less-47 order by后的注入
    Sqli-labs Less-46 order by后的注入
    Sqli-labs Background-9 order by后的injection
    Sqli-labs Less-45 堆叠注入
    jsp,servlet知识点
    jsp页面编码不统一可能会出问题
    jsp页面找不到,jsp页面乱码
    BZOJ 2843: 极地旅行社 lct splay
    2018/3/23 省选模拟赛
    bzoj 4573: [Zjoi2016]大森林 lct splay
  • 原文地址:https://www.cnblogs.com/downmoon/p/1018435.html
Copyright © 2011-2022 走看看