使用vb脚本让电脑自动加入域源码

简介: <p>在企业用户中,一大部分用户都加入了域,用于公司的安全管理。加入域对于管理比较方便。但是新增的设备或者用户如何快速的加入已知的域呢?很简单,看代码:</p> <p></p><pre name="code" class="vb">set objShell=wscript.createObject("wscript.shell")strComputer = "."Dim WshNe

在企业用户中,一大部分用户都加入了域,用于公司的安全管理。加入域对于管理比较方便。但是新增的设备或者用户如何快速的加入已知的域呢?很简单,看代码:

set objShell=wscript.createObject("wscript.shell")
strComputer = "."
Dim WshNetwork
Dim strComputer
Set WshNetwork = WScript.CreateObject("WScript.Network")
strDomain = WshNetwork.UserDomain
if strDomain = "HUPU" then
	Msgbox "此客户端已经在指定的域中!",64,"加入域工具"
	Wscript.Quit
end if

Msgbox "确定加入域,整个过程大概要1分钟左右",64,"加入域工具"
objShell.Run "cmd.exe /c netsh interface ip set dns ""本地连接"" static 10.10.2.116 primary",0,true
objShell.Run "cmd.exe /c netsh interface ip add dns ""本地连接"" 114.114.114.114",0,true

objShell.Run "cmd.exe /c sc config LmHosts start= AUTO",0,true
objShell.Run "cmd.exe /c net start lmhosts",0,true


Function X86orX64()
    On Error Resume Next
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem",,48)
    
    For Each objItem in colItems
        If InStr(objItem.SystemType, "86") <> 0 Then
            X86orX64 = "86"
        ElseIf InStr(objItem.SystemType, "64") <> 0 Then
            X86orX64 = "64"
        Else
            X86orX64 = objItem.SystemType
        End If
    Next
    
End Function

Set FSO = CreateObject("Scripting.FileSystemObject") 
WD = FSO.GetSpecialFolder(0)
SS = FSO.GetParentFolderName(WD)
SS = SS & "windows\system32\"
test = createobject("Scripting.FileSystemObject").GetFile(Wscript.ScriptFullName).ParentFolder.Path

if FSO.FileExists(test & "\netdom64.exe") then

elseif FSO.FileExists(test & "\netdom32.exe") then

else
	Msgbox "生成域程序缺少文件,请联系管理员!",48,"域程序" 
	Wscript.Quit
end if

if X86orX64 = "64" then 
	if FSO.FileExists(SS & "netdom64.exe") then
		objShell.Run "cmd.exe /c netdom64 join %COMPUTERNAME% /domain:hupu.com /UserD:administrator /PasswordD:hpQAZ!@# /reboot:30",0,true
		Msgbox "加入域成功,30秒后重启系统,cmd输入shutdown -a取消!",64,"加入域工具"
	else
		FSO.copyfile test & "\netdom64.exe", SS '拷贝域程序
	end if
	
	if FSO.FileExists(SS & "netdom64.exe") then
		objShell.Run "cmd.exe /c netdom64 join %COMPUTERNAME% /domain:hupu.com /UserD:administrator /PasswordD:hpQAZ!@# /reboot:30",0,true
		Msgbox "加入域成功,30秒后重启系统,cmd输入shutdown -a取消!",64,"加入域工具"
	else 
        	Msgbox "域程序生成失败,请联系管理员!",48,"域程序" 
		Wscript.Quit
	end if

elseif X86orX64 = "86" then
	if FSO.FileExists(SS & "netdom32.exe") then
		objShell.Run "cmd.exe /c netdom64 join %COMPUTERNAME% /domain:hupu.com /UserD:administrator /PasswordD:hpQAZ!@# /reboot:30",0,true
		Msgbox "加入域成功,30秒后重启系统,cmd输入shutdown -a取消!",64,"加入域工具"
	else 
		FSO.copyfile test & "\netdom32.exe", SS '拷贝域程序
	end if
	if FSO.FileExists(SS & "netdom32.exe") then
		objShell.Run "cmd.exe /c netdom32 join %COMPUTERNAME% /domain:hupu.com /UserD:administrator /PasswordD:hpQAZ!@# /reboot:30",0,true
		Msgbox "加入域成功,30秒后重启系统,cmd输入shutdown -a取消!",64,"加入域工具"
	else 
        	Msgbox "域程序生成失败,请联系管理员!",48,"域程序" 
		Wscript.Quit
	end if
	
end if
看看效果:


win7,xp全支持。

如有疑问,请加qq群:135430763 共同学习!

目录
相关文章
|
9天前
|
Windows
【Windows驱动开发】注册表的基本操作(创建、打开、修改、读取、枚举)(附源码)
【Windows驱动开发】注册表的基本操作(创建、打开、修改、读取、枚举)(附源码)
VB中项目工程保存基础知识
VB中项目工程保存基础知识
VC通过函数名调用DLL的标准范例
VC通过函数名调用DLL的标准范例
57 0
vb写的一个小解释器(暂定命名s++) 功能还很弱很弱
vb写的一个小解释器(暂定命名s++) 功能还很弱很弱
79 0
|
小程序
VB编程:获取文件夹下所有文件-1
VB编程:获取文件夹下所有文件-1
337 0
VB编程:获取文件夹下所有文件-1
|
.NET C# 开发框架
【技术贴】c# asp.net 无法直接启动带有“类库输出类型”的项目 若要调试此项目,请在此解决方
c# asp.net 无法直接启动带有“类库输出类型”的项目 若要调试此项目,请在此解决方案中添加一个引用库项目的可执行项目。将这个可执行项目设置为启动项     解决办法: 右键解决方案->属性->通用属性->启动项目->单启动项目->选择Web项目
1515 0
|
小程序
VB编程:获取文件夹下所有文件
VB编程:获取文件夹下所有文件
516 0
VB编程:获取文件夹下所有文件
VB编程:FileLen函数获取文件的大小
VB编程:FileLen函数获取文件的大小
280 0
VB源码之友终于开发完毕了
VB源码之友是一款VB IDE插件,是继API浏览器之后,叶帆软件系列家族中又一款VB程序开发辅助软件
781 0
|
Shell C#
VB实现SHELL扩展之接口参数获取失败探析
前几天有位网友问我用VB实现SHELL扩展的问题,这个问题比较有意思,虽然VB较少使用了,但是用VB开发COM组件还是比较方便的(前几天用EVC开发COM组件,相比起来,用VB还是比较幸福的),所以便进行了深入的研究。
661 0