我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何利用vbs自动修改ip

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何利用vbs自动修改ip

本篇内容介绍了“如何利用vbs自动修改ip”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

单位机房的系统需要重新安装,一共近300台设备,使用ghost网络克隆后,客户机重新设置ip是个麻烦的事情。我们使用的教学管理软件要求客户机必须有固定ip,单位5个机房如下(DNS:61.134.1.4,掩码为:255.255.255.0):

机房

起始ip

ip终止ip 

网关 

机器名 

工作组 

 1号 192.168.1.1100  254  No_100~No_160 S01
 2号 192.168.1.101 200 254  No_200~No_260 S02
 3号 192.168.3.1 80 254 No_300~No_360 S03
 4号 192.168.3.81 160 254 No_400~No_460 S04
 5号 192.168.3.161 240 254  No_500~No_560 S05


以下为vbs源码:
1.xp系统(测试通过,用户为Administrator,文件为E:\fxp.vbs,启动组建立快捷方式fxp.lnk以便开机后自动运行一次)

复制代码 代码如下:


'/////主程序 
dim msginf,machname'定义变量:对话框,机器名 
msginf=msgbox("该程序只能执行1次,请在XP系统硬件安装完毕后执行!" &chr(13) & "是否继续?",65,"修改机器网络配置") '信息提示 
if msginf=1 then ' 如果按确定,则 

machname=inputon() ' 用函数inputon()分析 

if machname<>"quit" then ' 如果返回值不等于"quit",则 
wmitoip(machname) ' 运行函数wmitoip()设置机器信息 
mreboot()'重启机器 
end if 
end if 

'///重启机器 
sub mreboot() 
dim fso,f1,f2 
Set fso = CreateObject("Scripting.FileSystemObject") 

'删除启动组 
if fso.fileexists("C:\Documents and Settings\Administrator\「开始」菜单\程序\启动\fxp.lnk") then 
set f1=fso.getfile("C:\Documents and Settings\Administrator\「开始」菜单\程序\启动\fxp.lnk") 
f1.delete 
end if 

'删除vbs文件 
if fso.fileexists("e:\fxp.vbs") then 
set f2=fso.getfile("e:\fxp.vbs") 
f2.delete 
end if 

Set WshShell = Wscript.CreateObject("Wscript.Shell") 
'WshShell.Run ("shutdown.exe -r -t 5") ' 重启 

end sub 

'///生成计算机名 
function inputon() ' 函数inputon() 
dim t ' 变量 
while true ' 循环直到退出函数 
t=inputbox("按一下规则输入:" & chr(13) & chr(13) & "第1位代表机房号" & chr(13) & "第2、3位代表机器号" & chr(13) & "教师机用00代表" & chr(13) & "如:123代表1号机房23号机" & chr(13) & "请确保输入正确!!","请输入3位机器标识!","") ' 输入机算机名,默认值为空 
if t="" then ' 如果t等于空(按了取消键),则 
inputon="quit" ' 返回值为"quit" 
exit function ' 退出程序 
end if 
if len(t)=3 then ' 计算机号的长度为3位 
if Cint(t)>=100 and Cint(t)<580 then ' 验证 
inputon=t ' 返回需要的计算机名 
exit function 
end if 
end if 
wend 
end function 


'///修改机器ip、掩码、网关、工作组、机器名 
sub wmitoip(t) 
strComputer="." 
strmask="255.255.255.0" 
Dim lt,rt' 变量 
dim ipv,gateway,lan 'ip,网关,工作组 
lt=cint(left(t,1))'机号左1位数字值 
rt=cint(right(t,2)) ' 机号右两位数字值 

if lt=1 or lt=2 then'判断网关 
gateway="192.168.1.254" 
else 
gateway="192.168.3.254" 
end if 

if lt=1 then '1号机房 
lan="S01" 
ipv="192.168.1." 
if rt=0 then '教师机 
ipv=ipv+"100" 
else'学生机 
ipv=ipv+Cstr(rt) 
end if 
end if 

if lt=2 then '2号机房 
lan="S02" 
ipv="192.168.1." 
if rt=0 then '教师机 
ipv=ipv+"200" 
else'学生机 
rt=rt+100 
ipv=ipv+Cstr(rt) 
end if 
end if 

if lt=3 then '3号机房 
lan="S03" 
ipv="192.168.3." 
if rt=0 then '教师机 
ipv=ipv+"80" 
else'学生机 
ipv=ipv+Cstr(rt) 
end if 
end if 

if lt=4 then '4号机房 
lan="S04" 
ipv="192.168.3." 
if rt=0 then '教师机 
ipv=ipv+"160" 
else'学生机 
rt=rt+80 
ipv=ipv+Cstr(rt) 
end if 
end if 

if lt=5 then '5号机房 
lan="S05" 
ipv="192.168.3." 
if rt=0 then '教师机 
ipv=ipv+"240" 
else'学生机 
rt=rt+160 
ipv=ipv+Cstr(rt) 
end if 
end if 

Set objWMIService=GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 
Set colNetAdapters=objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE") 
strIPAddress=Array(ipv) 
strSubnetMask=Array(strmask) 
strGateway = Array(gateway) '修改网关 
'strGatewayMetric = Array(1) '跃点数 
strDNS=Array("61.134.1.4") 

For Each objNetAdapter in colNetAdapters  
errEnable=objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)'ip,掩码 
errGateways = objNetAdapter.SetGateways(strGateway) '网关 
errDns=objNetAdapter.SetDNSServerSearchOrder(strDNS)'dns 
Next 

Set objWMIService = GetObject("winmgmts:" _ 
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") 
Set colComputers = objWMIService.ExecQuery _ 
    ("Select * from Win32_ComputerSystem") 
For Each objComputer in colComputers 
    err = ObjComputer.Rename("No_" & t)'机器名 
    ReturnValue = objComputer.JoinDomainOrWorkGroup("S0" & left(t,1))'工作组   
Next 

end sub 




2.98系统

98系统可以生成ip.reg注册表文件,导入后就可以了,源码如下(主体思路,这次没有98系统,所以未完成,可参考xp系统的改进):


复制代码 代码如下:


'/////主程序 
dim msginf,machname'定义变量:对话框,机器名 
msginf=msgbox("生成注册表文件,是否继续?",65,"getreg") '信息提示 
if msginf=1 then ' 如果按确定,则 

machname=inputon() ' 用函数inputon()分析 

if machname<>"quit" then ' 如果返回值不等于"quit",则 
setreg(machname) ' 运行函数setreg()生成注册表ip.reg 
end if 
end if 

'///生成计算机名 
function inputon() ' 函数inputon() 
dim t ' 变量 
while true ' 循环直到退出函数 
t=inputbox("按一下规则输入:" & chr(13) & chr(13) & "第1位代表机房号" & chr(13) & "第2、3位代表机器号" & chr(13) & "教师机用00代表" & chr(13) & "如:123代表1号机房23号机" & chr(13) & "请确保输入正确!!","请输入3位机器标识!","") ' 输入机算机名,默认值为空 
if t="" then ' 如果t等于空(按了取消键),则 
inputon="quit" ' 返回值为"quit" 
exit function ' 退出程序 
end if 
if len(t)=3 then ' 计算机号的长度为3位 
if Cint(t)>=100 and Cint(t)<580 then ' 验证 
inputon=t ' 返回需要的计算机名 
exit function 
end if 
end if 
wend 
end function 

'///生成注册文件 
sub setreg(t) ' 生成注册表,t为机器号 
Dim fso, f1,f2,lt,rt' 变量 
dim ipv,gateway,lan 'ip,网关,工作组 
lt=cint(left(t,1))'机号左1位数字值 
rt=cint(right(t,2)) ' 机号右两位数字值 

if lt=1 or lt=2 then'判断网关 
gateway="192.168.1.254" 
else 
gateway="192.168.3.254" 
end if 

if lt=1 then '1号机房 
lan="S01" 
ipv="192.168.1." 
if rt=0 then '教师机 
ipv=ipv+"100" 
else'学生机 
ipv=ipv+Cstr(rt) 
end if 
end if 

if lt=2 then '2号机房 
lan="S02" 
ipv="192.168.1." 
if rt=0 then '教师机 
ipv=ipv+"200" 
else'学生机 
rt=rt+100 
ipv=ipv+Cstr(rt) 
end if 
end if 

if lt=3 then '3号机房 
lan="S03" 
ipv="192.168.3." 
if rt=0 then '教师机 
ipv=ipv+"80" 
else'学生机 
ipv=ipv+Cstr(rt) 
end if 
end if 

if lt=4 then '4号机房 
lan="S04" 
ipv="192.168.3." 
if rt=0 then '教师机 
ipv=ipv+"160" 
else'学生机 
rt=rt+80 
ipv=ipv+Cstr(rt) 
end if 
end if 

if lt=5 then '5号机房 
lan="S05" 
ipv="192.168.3." 
if rt=0 then '教师机 
ipv=ipv+"240" 
else'学生机 
rt=rt+160 
ipv=ipv+Cstr(rt) 
end if 
end if 


Set fso = CreateObject("Scripting.FileSystemObject") 
if fso.fileexists("e:\ip.reg") then 
set f2=fso.getfile("e:\ip.reg") 
f2.delete 
end if '如果存在ip.reg,先删了 

set f1 = fso.CreateTextFile("e:\ip.reg", True) ' 建立文件ip.cfg 
'f1.WriteLine("REGEDIT4") ' 以下为生成注册表 
f1.WriteLine("Windows Registry Editor Version 5.00") 
f1.WriteBlankLines(1) 
f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName]") 
f1.WriteLine(chr(34) & "ComputerName" & chr(34) & "=" & chr(34) & t & chr(34)) ' 计算机名 
f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000]") 
f1.WriteLine(chr(34) & "IPAddress" & chr(34) & "=" & chr(34) & ipv & chr(34)) ' IP 
f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000]") 
f1.WriteLine(chr(34) & "DefaultGateway" & chr(34) & "=" & chr(34) & gateway & chr(34)) ' 网关 
f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000]") 
f1.WriteLine(chr(34) & "IPMask" & chr(34) & "=" & chr(34) & "255.255.255.0" & chr(34)) ' 子网掩码 
f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]") 
f1.WriteLine(chr(34) & "Comment" & chr(34) & "=" & chr(34) & t & chr(34)) ' 计算机说明 
f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]") 
f1.WriteLine(chr(34) & "ComputerName" & chr(34) & "=" & chr(34) & t & chr(34)) ' 计算机名 
f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]") 
f1.Writeline(chr(34) & "Workgroup" & chr(34) & "=" & chr(34) & lan & chr(34)) ' 工作组 
end sub

“如何利用vbs自动修改ip”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何利用vbs自动修改ip

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何利用vbs自动修改ip

本篇内容介绍了“如何利用vbs自动修改ip”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!单位机房的系统需要重新安装,一共近300台设备,使用
2023-06-08

如何使用vbs脚本自动修改ip设置

本篇内容主要讲解“如何使用vbs脚本自动修改ip设置”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用vbs脚本自动修改ip设置”吧!代码如下:@Echo OffTITLE 编程网ip设置
2023-06-09

如何使用Shell脚本自动修改IP地址

如何使用Shell脚本自动修改IP地址,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。#!/bin/sh #auto Change ip netmask gateway sc
2023-06-09

CMD和vbs如何修改IP地址及DNS

这篇文章给大家分享的是有关CMD和vbs如何修改IP地址及DNS的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。修改IP cmd /c netsh interface ip set address name=" 本
2023-06-08

Django如何利用uwsgi和nginx修改代码自动重启

目录利用uwsgi和nginx修改代码自动重启正确手动重载uwsgi和代码的方式Django修改文件后不生效 重启uwsgi解决问题描述解决办法总结利用uwsgi和nginx修改代码自动重启在默认设置下,uwsgi本身不会立即加载修改后的
2023-05-12

利用Shell脚本实现自动修改IP、主机名等功能

这篇文章主要介绍“利用Shell脚本实现自动修改IP、主机名等功能”,在日常操作中,相信很多人在利用Shell脚本实现自动修改IP、主机名等功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”利用Shell脚本
2023-06-09

如何利用VBS脚本自动创建计算机帐户

本篇内容主要讲解“如何利用VBS脚本自动创建计算机帐户”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何利用VBS脚本自动创建计算机帐户”吧!mcse注:其实这是 按照ADSI(Active D
2023-06-08

如何利用VBS脚本修改联想笔记本BIOS密码

这篇文章主要介绍如何利用VBS脚本修改联想笔记本BIOS密码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!无意中找到的一些资料:vbs 代码:复制代码 代码如下:strComputer = "." Set objWM
2023-06-08

windows如何动态修改ip(脚本命令)

办公网络和家里的网络不一样 总是要换来换去,弄了一个脚本,双击运行就可以了,win7 要用超级管理员去运行 echo 设置ip 默认子网 默认网关 开始(无线网络连接:就是网络连接名称,也可以是‘本地连接’ ) ne
2023-05-29

如何防止Xen VPS用户自己修改IP地址

本篇内容介绍了“如何防止Xen VPS用户自己修改IP地址”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!作为 Xen VPS 服务商,我们分
2023-06-13

电脑ip地址如何改成自动获取

这篇文章主要介绍“电脑ip地址如何改成自动获取”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“电脑ip地址如何改成自动获取”文章能帮助大家解决问题。电脑ip地址改成自动获取的方法1、找到右下角网络图标
2023-07-01

如何实现可以修改脚本自身运行次数的vbs

小编给大家分享一下如何实现可以修改脚本自身运行次数的vbs,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!代码如下:Const n = 1 Dim f, a, s,
2023-06-08

如何用vbscript来添加ip策略自动封IP

本篇内容介绍了“如何用vbscript来添加ip策略自动封IP”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!程序主要是读取这个网站的iis日
2023-06-08

如何利用Python自动生成PPT

今天小编给大家分享一下如何利用Python自动生成PPT的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。在日常工作中,PPT制
2023-07-02

使用bat脚本文件怎么自动修改本机IP地址

这篇文章给大家介绍使用bat脚本文件怎么自动修改本机IP地址,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。@echo offsetlocal enabledelayedexpansion:initcls&echo ——
2023-06-08

如何使用VBS修改二进制文件HEX数据

这篇文章给大家分享的是有关如何使用VBS修改二进制文件HEX数据的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。可用之处还是有的,如:隐藏快捷方式中目标文件位置;破解XP中TCP/IP连接数限制;去掉RAR右键解压
2023-06-08

如何利用Kickstart自动化安装CentOS

这篇文章主要讲解了“如何利用Kickstart自动化安装CentOS”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何利用Kickstart自动化安装CentOS”吧!前言因为需要在浪潮的x
2023-06-10

如何使用vbs实现恢复暂停的自动启动服务

这篇文章主要为大家展示了“如何使用vbs实现恢复暂停的自动启动服务”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用vbs实现恢复暂停的自动启动服务”这篇文章吧。strComputer =
2023-06-08

Linux下如何使用dhcp自动获取IP

小编给大家分享一下Linux下如何使用dhcp自动获取IP,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!dhcp是动态主机设置协议(Dynamic Host Co
2023-06-27

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录