autoit脚本实现电脑加域,退域,重加域

本文介绍了一款使用AutoIt编写的自动加域、退域及重加域的脚本,解决了企业环境中电脑因各种原因掉域的问题。通过简单的用户交互完成配置,并实现了账号密码的安全加密。

autoit脚本实现电脑加域,退域,重加域

企业网络环境中,大多数电脑都会用域控制器来管理,但是加域的电脑用一段时间就会出现域用户与域控制器失去联系的情况,导致域用户登录不了电脑,如下图所示
在这里插入图片描述
这时就会导致登录不了域环境,只能切换本地用户账号登录电脑,然后重新退域再执行加域步骤,如果在大环境下,天天手工去点击退域加域操作,非常繁琐,今天介绍一款自己用autoit脚本编写的一款自动重加域脚本,来解决这个麻烦。在掉域的情况,用户只需双击运行一遍该脚本即可实现重加域,该脚本适用于windows7 windows10。
目前已知会导致电脑掉域的情况有以下几种
1,电脑时间和域控制器的时候不一致,相差几分钟就会掉域
2,域环境有相同名字的计算机名加入到同一个域里面,会挤掉其中一个
3,用同一个ghost系统镜像安装的系统有几率会导致掉域,其中原理还不太清楚
autoit编辑器官网下载地址为 https://www.autoitscript.com/site/autoit/downloads/,可以自行去下载
下面放出源码,和自己编译后的exe版本,不放心exe版本的,自行复制源码去编译。

#RequireAdmin										;让脚本使用管理员权限运行
#include <ButtonConstants.au3>                       ;需要用到关联的库
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Crypt.au3>
#include <MsgBoxConstants.au3>
$Form1 = GUICreate("加域", 300, 250, 192, 124)                 ;创建窗口
Local $idProgressbar1 = GUICtrlCreateProgress(50, 60, 200, 20)  ;创建进度条
GUICtrlSetColor(-1, 32250)                                      ;设置进度条的样式
$Button1 = GUICtrlCreateButton("确定", 75, 130, 150, 60)        ;创建确定按钮
$Button2 = GUICtrlCreateButton("删除配置", 240, 220, 60, 30)    ;创建删除配置按钮
$combo = GUICtrlCreateLabel("",115,100,145,30)                  ;创建提示消息标签,默认为空
GUISetState(@SW_SHOW)                                           ;调整窗口状态,让窗口可视
While 1    ;创建一个while循环,监测消息
	$nMsg = GUIGetMsg()                               ;获取窗口事件消息
	Switch $nMsg
		Case $GUI_EVENT_CLOSE                         ;如果点击关闭按钮,执行以下事件
			Exit                                      ;退出程序
		
		Case $Button1                                 ;如果点击$Button1按钮,执行以下事件
		
			WinSetOnTop($Form1,"",0)                  ;锁定窗口,让其置顶
			GUICtrlSetData($combo,"")                 ;清空提示消息标签
			GUICtrlSetData($idProgressbar1, 10)       ;进度条去到百分之10
			
			$panduan = FileExists(@ScriptDir & "\test.ini")        ;检测当前文件路径下的test.ini文件在不在,存在返回1,不在返回0
			If $panduan = 1 Then                                ;如果test.ini文件存在执行以下事件
				jiayu()									      ;执行创建的jiayu()函数
			Else                                              ;如果test.ini文件不存在执行以下事件
				Example()									;执行创建的Example()函数
				jiayu()										;执行创建的jiayu()函数
			EndIf											;结束if语句
		Case $Button2														;如果点击$Button2按钮,执行以下事件
			$panduan = FileExists(@ScriptDir & "\test.ini")					;检测当前文件路径下的test.ini文件在不在,存在返回1,不在返回0
			If $panduan = 1 Then											;如果test.ini文件存在执行以下事件
				IniDelete (@ScriptDir & "\test.ini", "config" ,"域名" )		;删除当前文件路径下的test.in
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值