POPTEST老李分享修改dns ip的vbs代码

 

poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标。如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-84505200。

准备把学员在工作中写的一个自动化功能加入到培训中案例,由于测试服务器功能,每次要修改ip地址,所以要自动化去修改dns ip,代码如下:

' This script changes the DNS servers for a network device in Windows
' to a defined IP or deletes them and makes it the default automatic
 
' Test if in admin mode by detecting 'elevated' in the command line that launched this script
' WScript is basically a THIS script object
 
If WScript.Arguments.Named.Exists("elevated") = False Then
    'Launch this script again as administrator
    CreateObject _
     ("Shell.Application").ShellExecute _
        "wscript.exe", """" & WScript.ScriptFullName & """ /elevated", "", "runas", 1
    WScript.Quit
Else
    'Change the working directory from the system32 folder back to the script's folder.
    Set oShell = CreateObject("WScript.Shell")
    oShell.CurrentDirectory = CreateObject _
        ("Scripting.FileSystemObject").GetParentFolderName(WScript.ScriptFullName)
    'MsgBox "Now running with elevated permissions"
End If
 
' Define the DNS Primary and secondary server IPs
DNSserv = "111.111.111.111,222.222.222.222"
 
' Ask if the DNS servers should be set or removed
iAction = MsgBox("Would you like to use DNS?", _
        vbYesNoCancel+vbQuestion+vbApplicationModal, "DNS Toggle: " & DNSserv)
 
' Cancel was selected - quit this script
If vbCancel = iAction Then
    WScript.Quit
End If
 
strComputer = "." ' This computer
 
' Get the Script shell and WMI Service objects
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set WshShell = WScript.CreateObject("WScript.Shell")
 
' The registry key that hold the TCP/IP parameters
Regkey = "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\Tcpip\Parameters\Interfaces\"
 
' Enumerate all of the enabled network devices
Set IPDevSet = objWMIService.ExecQuery _
("Select SettingID from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
 
DNSservRead = ""
 
For Each IPDev in IPDevSet
    ' Get the current setting
    DNSservRead = WshShell.RegRead _
        ( Regkey & IPDev.SettingID & "\NameServer")
    'MsgBox "DNS Servers was set to:"  & vbCrLf & DNSservRead, vbOK, "Old Status"
 
    ' if it's blank and the user chose YES set it to the DNS Server values.
    ' So we don't overwrite the values that are already set
    If "" = DNSservRead and vbYes = iAction Then
        'Combine regkey, settingID, and nameserver to create the correct registry key path
        WshShell.RegWrite Regkey & IPDev.SettingID & "\NameServer", DNSserv, "REG_SZ"
         
    ' If the user selected NO to delete the DNS values this script sets
    ' and it's not set to those DNS values do not mess with it.
    ElseIf DNSservRead = DNSServ and vbNo = iAction Then
        WshShell.RegWrite Regkey & IPDev.SettingID & "\NameServer", "", "REG_SZ"
    End If
 
    ' See the new setting
    'DNSservRead = WshShell.RegRead( Regkey & IPDev.SettingID & "\NameServer")
    'MsgBox "DNS Servers now set to:"  & vbCrLf & DNSservRead, vbOK, "New Status"
Next
 
'Final message
szTitle = ""
szMssg = ""
If vbYes = iAction Then
    szMssg = "DNS Servers now set to use:" & vbCrLf & " " & DNSserv
    szTitle = "DNS.com is ON"
Else
    szMssg = "DNS Servers deleted."& vbCrLf & "Now set to Automatic"
    szTitle = "DNS.com is OFF"
End If
 
MsgBox szMssg, vbInformation, szTitle

POPTEST老李分享修改dns ip的vbs代码的更多相关文章

  1. POPTEST老李分享session,cookie的安全性以及区别 1

    POPTEST老李分享session,cookie的安全性以及区别   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程 ...

  2. POPTEST老李分享DOM解析XML之java

    POPTEST老李分享DOM解析XML之java   Java提供了两种XML解析器:树型解释器DOM(Document Object Model,文档对象模型),和流机制解析器SAX(Simple ...

  3. POPTEST老李分享session,cookie的安全性以及区别 3

    如何查看服务器端输送到我们电脑中的这些Cookie信息:      点开IE浏览器或其他浏览器,在菜单栏中有工具选项,点开有InterNet选项:          Cookie名称.来源.文件格式( ...

  4. POPTEST老李分享session,cookie的安全性以及区别 2

    四,session和cookie谁更安全 就个人而言,我觉得session更安全一点,我以下几点看法. 1,如果session和cookie一样安全的话,二者就没有并要同时存在了,只要cookie就好 ...

  5. centos 修改DNS,网关,IP地址

    1.CentOS 修改DNS 修改对应网卡的DNS的配置文件 # vi /etc/resolv.conf  修改以下内容 nameserver 8.8.8.8 #google域名服务器 nameser ...

  6. CentOS 设置网络(修改IP&修改网关&修改DNS)--update.14.08.15

    自己电脑上装的虚拟机用桥接方式连接物理机,虚拟机重启后ip会发生变化,非常阻碍Xshell的连接和hosts指定的dns. 通过修改IP为static模式,保持IP不变. ============== ...

  7. ubuntu 修改静态IP和DNS

    1.修改配置文件/etc/network/interfacesroot@ubuntu:~# sudo vi /etc/network/interfaces 添加以下内容:auto eth0       ...

  8. Linux下修改网卡IP、DNS和网关

    Linux下修改网卡IP和网关 建议通过终端字符方式下来修改 一.修改IP地址 vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOO ...

  9. CentOS 网络设置修改 指定IP地址 DNS 网关(转)

    CentOS 网络设置修改 指定IP地址 DNS 网关(实测 笔记)   环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Centos-6.5-x86_64 ...

随机推荐

  1. (@WhiteTaken)设计模式学习——建造者模式

    Builder模式,也就是建造者模式或者生成器模式,是GoF提出的23种设计模式的一种. 这种模式是用来隐式的创建复合对象而提出来的. 创建复合对象的过程,不在主客户端显示. 下面直接上代码.以修建房 ...

  2. JS作用域理解

    1.JS解析步骤: a.预解析 将变量声明提升: 将函数声明及函数内容提升,可以理解成原来位置的函数在解析代码时已经提到代码初始位置: 遇到重名,只留下一个: 如有重名变量和函数,留下函数: 如有两个 ...

  3. js设计模式--迭代器模式

    迭代器模式: 迭代器模式提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露该方法中的内部表示.js中我们经常会封装一个each函数用来实现迭代器. 理解的意思:提供一个方法,去把对象的每一项按 ...

  4. WebApi实现通讯加密

    一. 场景介绍: 如题如何有效的,最少量的现有代码侵入从而实现客户端与服务器之间的数据交换加密呢? 二. 探究: 1.需求分析 webapi服务端 有如下接口: public class ApiTes ...

  5. C#基础——数组(冒泡排序)

    数组 所谓数组,就是相同数据类型的元素按一定的顺序的集合,就是把有限个类型相同的变量用一个名字来命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标.组成数组的各个变量称为数组的分量 ...

  6. Java设计模式之《组合模式》及应用场景

    摘要: 原创作品,可以转载,但是请标注出处地址http://www.cnblogs.com/V1haoge/p/6489827.html 组合模式,就是在一个对象中包含其他对象,这些被包含的对象可能是 ...

  7. TypeScript设计模式之单例、建造者、原型

    看看用TypeScript怎样实现常见的设计模式,顺便复习一下. 单例模式 Singleton 特点:在程序的生命周期内只有一个全局的实例,并且不能再new出新的实例. 用处:在一些只需要一个对象存在 ...

  8. HTTP协议&SOCKET协议

    一. HTTP协议是什么? 我们在浏览器的地址栏里输入的网站地址叫做 URL(UniformResourceLocator,统一资源定位符).就像每家每户都有一个门牌地址一样,每个网页也都有一个Int ...

  9. 【转】对Django框架架构和Request/Response处理流程的分析

    本文转载于疯狂的蚂蚁. 一. 处理过程的核心概念 如下图所示django的总览图,整体上把握以下django的组成: 核心在于中间件middleware,django所有的请求.返回都由中间件来完成. ...

  10. 《Machine Learning》系列学习笔记之第四周

    第四周 Model Representation I 让我们来看看如何使用神经网络来表示假设函数.在非常简单的水平上,神经元基本上是将输入(树突)作为输入到输出(轴突)的电输入(称为"尖峰& ...