几段非常有用的脚本(来自微软网站,由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

(0)

相关推荐

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

    几段非常有用的脚本(来自微软网站,由downmoon精心收集)  一.在网络硬件故障或网络故障断开时发送警告  复制代码 代码如下: strComputer = "."  Set objWMIService = GetObject("winmgmts:" & strComputer & " ootwmi")  Set colMonitoredEvents = objWMIService.ExecNotificationQuery 

  • 推荐10个提供免费PHP脚本下载的网站

    本文将重点介绍10个PHP脚本的免费资源下载站.之前推荐 <16个下载超酷脚本的热门网站>,这些网站除了PHP脚本,还有JavaScript.Java.Perl.ASP等脚本.如果你已是脚本代码巧匠,不妨把你的出色脚本放到Code Canyon网站上去出售,这不失为一种赚钱之道,尤其是在工资涨不过物价的时期. 1.PHP Junkyard 这里提供免费的PHP脚本下载.包括PHP资源,教程,文章等等. 2.Free-Php.net Free-Php.net 为你提供分类列表,包括免费的PHP脚

  • 使用Python脚本实现批量网站存活检测遇到问题及解决方法

    做渗透测试的时候,有个比较大的项目,里面有几百个网站,这样你必须首先确定哪些网站是正常,哪些网站是不正常的.所以自己就编了一个小脚本,为以后方便使用. 具体实现的代码如下: #!/usr/bin/python # -*- coding: UTF-8 -*- ''' @Author:joy_nick @博客:http://byd.dropsec.xyz/ ''' import requests import sys f = open('url.txt', 'r') url = f.readline

  • 来自微软的免费杀毒软件抢先试用

    微软于前几天刚刚发布了反间谍软件后,又趁热打铁于昨天(1月11日)发布了其酝酿已久的杀毒软件.微软把这个杀毒软件代号定为TITAN(太阳神),并打算在公司每月的安全更新日(每月的第二个星期二)发布该软件的更新版本,甚至更频繁一些.下面就请大家随笔者一起看一下微软推出的第一款杀毒软件. Malicious Software Removal Tool工具可以检测 XP以上系统的Blaster.Sasser及Mydoom等少数几个特定和流行的恶意程序,且能够帮助删除发现的感染文件.可以看出Malici

  • 来自微软的免费杀毒软件抢先试用!

    微软于前几天刚刚发布了反间谍软件后,又趁热打铁于昨天(1月11日)发布了其酝酿已久的杀毒软件.微软把这个杀毒软件代号定为TITAN(太阳神),并打算在公司每月的安全更新日(每月的第二个星期二)发布该软件的更新版本,甚至更频繁一些.下面就请大家随笔者一起看一下微软推出的第一款杀毒软件. 一.软件小档案 软件名称:Malicious Software Removal Tool 软件版本:V1.0 软件语言:简体中文 软件类型:安全相关/杀毒软件 运行环境:windows XP以上版本 下载地址: h

  • javascript 有用的脚本函数

    function styleHeaderSiblings(){ if(!document.getElementByTagName)return false; var headers = document.getElementByTagName("h1"); for(var i = 0;i<headers.length;i++){ addClass(elem,"intro"); } } function styleElementSiblings(tag,thec

  • shell脚本实现的网站日志分析统计(可以统计9种数据)

    写了个shell脚本,可以用来统计每天的访问日志,并发送到电子邮箱,方便每天了解网站情况.脚本统计了:1.总访问量2.总带宽3.独立访客量4.访问IP统计5.访问url统计6.来源统计7.404统计8.搜索引擎访问统计(谷歌,百度)9.搜索引擎来源统计(谷歌,百度) 复制代码 代码如下: #!/bin/bashlog_path=/home/www.jb51.net/log/access.log.1domain="jb51.net"email="log@jb51.net&quo

  • 脚本批量检测网站是否存活

    1. 脚本内容编写如下: #!/bin/bash url=( www.baidu.com www.pornhub.com www.vip.com www.91porn.com www.taobao.com ) for i in ${url[*]} do ping -c 2 $i > /dev/null 2>&1 if [ $? -eq 0 ];then echo "$i 服务正常" else echo "$i 服务异常" fi done 注: 1

  • 使用shell脚本找出网站的空页面和404错误页面

    早之前记的一个笔记了,之前只是记录了两句代码,放出来的话也是一个低质量的页面,于是设置为了仅自己可见,今晚抽空补充一下. 记得当的情景应该是提交sitemap时百度老提示有错误的URL,导致sitemap不能正常被抓取,于是在想办法解决这个问题,所以才有下面这些笔记:用shell批量找出网站空页面和404错误页面. 废话不多说,直接上shell代码: 复制代码 代码如下: time cat sitemap.txt|while read line;do curl -l $line -m 5 --c

  • 跟老齐学Python之变量和参数

    那么什么这两个到底有什么区别和联系呢?我在网上搜了一下,发现很多说法,虽然大同小异,但是似乎只有下面这一段来自微软网站的比较高度抽象,而且意义涵盖深远.我摘抄过来,看官读一读,是否理解,虽然是针对VB而言的,一样有启发. 复制代码 代码如下: 参数和变量之间的差异 (Visual Basic) 多数情况下,过程必须包含有关调用环境的一些信息.执行重复或共享任务的过程对每次调用使用不同的信息.此信息包含每次调用过程时传递给它的变量.常量和表达式. 若要将此信息传递给过程,过程先要定义一个形参,然后

随机推荐