修改密码脚本
我写了个工具箱,登陆要密码,我想在加点内容就是可以修改登陆密码的脚本(需要原密码确认,并且要确认一次新密码三个$p),修改密码部分UDF存入注册表一个键值,并让下次登陆读取保存的这个注册表键值!先谢了{:face (59):} 顶上去,望专家指点{:face (319):} 求助{:face (319):} 你是哪一步不清楚还是都不清楚哦~ 这个应该容易解决吧!有afan在就行吧! 我把这步脚本发上来;登陆匡
Dim $a = InputBox("请输入密码", "请输入密码,有 3 次机会输入", "", "*", 180, 120,$ES_PASSWORD), $p = 'bn3045800'
修改密码的按键$Button2 = GUICtrlCreateButton("密码修改", 144, 24, 123, 25)
$Button2 按键弹出
If $nMsg = $Button2 Then
Example1()
;密码输入匡部分
Func Example1()
Local $file, $btn, $msg, $btn1, $p1, $p2, $p3
GUICreate("修改密码", 280, 140)
GUISetState(@SW_SHOW)
$p1 = GUICtrlCreateLabel("原始密码:", 5, 15, 70, 20)
$p2 = GUICtrlCreateLabel("新密码:", 5, 45, 70, 20)
$p3 = GUICtrlCreateLabel("确认密码:", 5, 75, 70, 20)
GUICtrlCreateInput("", 60, 10, 210, 20, $ES_PASSWORD)
GUICtrlCreateInput("", 60, 40, 210, 20, $ES_PASSWORD)
GUICtrlCreateInput("", 60, 70, 210, 20, $ES_PASSWORD)
$btn = GUICtrlCreateButton("确定", 40, 100, 80, 30)
$btn1 = GUICtrlCreateButton("取消", 150, 100, 80, 30)
While 1
$msg = GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
Case $btn
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Run","gongjumima","REG_SZ","存放(登陆读取)工具修改密码")
EndSwitch
;原始密码
;新密码
;确定新密码
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
;退出修改密码框
If $msg = $btn1 Then
ExitLoop
EndIf
WEnd
GUIDelete()
EndFunc
可以修改登陆密码的脚本(需要原密码确认,并且要确认一次新密码三个$p),修改密码部分UDF存入注册表一个键值,并让下次登陆读取保存的这个注册表键值! 版主,你帮我研究下,看怎么写法才能实现{:face (229):} 我现在没空,晚上来看看~ 可能下午就有人帮你解决了 这帖子从昨天就挂起到现在的
高人指点
{:face (198):} 本帖最后由 410521a 于 2010-7-10 17:23 编辑
刚试着做了一个这样的`不知道能不能帮到楼主#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
Dim $Button, $mima
$mima = RegRead("HKEY_CURRENT_USER\Software\登陆","密码")
$Form1 = GUICreate("登陆", 231, 160, -1,-1)
$Input1_1 = GUICtrlCreateInput("", 64, 45, 121, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_PASSWORD))
$Label1_2 = GUICtrlCreateLabel("密码:", 24, 48, 40, 17)
$Button = GUICtrlCreateButton("登陆", 24, 112, 75, 25)
$Button = GUICtrlCreateButton("修改密码", 128, 112, 75, 25)
$Form2 = GUICreate("密码修改", 240, 159, -1,-1)
$Input2_1 = GUICtrlCreateInput("", 72, 16, 121, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_PASSWORD))
$Input2_2 = GUICtrlCreateInput("", 72, 48, 121, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_PASSWORD))
$Input2_3 = GUICtrlCreateInput("", 72, 88, 121, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_PASSWORD))
$Label2_1 = GUICtrlCreateLabel("旧密码:", 16, 16, 52, 17)
$Label2_2 = GUICtrlCreateLabel("新密码:", 16, 48, 52, 17)
$Label2_3 = GUICtrlCreateLabel("新密码:", 16, 88, 44, 17)
$Button = GUICtrlCreateButton("保存", 24, 120, 75, 25)
$Button = GUICtrlCreateButton("取消", 136, 120, 75, 25)
TraySetState()
GUISwitch($Form1)
GUISetState(@SW_SHOW)
For $I = 4 To 0 Step -1
GUICtrlSetOnEvent($Button[$I],"GUIGetMsg")
Next
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button
$du=GUICtrlRead($Input1_1)
If $du=$mima Then
MsgBox(0,"","登陆成功!")
Else
MsgBox(0,"","密码错误!")
EndIf
Case $Button
GUISetState(@SW_SHOW,$Form2)
Case $Button
$du1=GUICtrlRead($Input2_1)
$du2=GUICtrlRead($Input2_2)
$du3=GUICtrlRead($Input2_3)
If $du1<>$mima Then
MsgBox(0,"","旧密码不正确!")
ElseIf $du3<>$du2 Then
MsgBox(0,"","新密码两次输入不一样!")
Else
RegWrite("HKEY_CURRENT_USER\Software\登陆","密码","REG_SZ",$du2)
MsgBox(0,"","密码修改成功!")
EndIf
Case $Button
GUISetState(@SW_HIDE,$Form2)
EndSwitch
WEnd 谢谢水木子的评分``第一次帮助别人得到评分```这让我很感动`` `` 就是不知道能不能帮到楼主`` #include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Local $p = '123', $input1, $input2, $input3
For $i = 3 To 1 Step -1
$a = InputBox("请输入密码", "请输入密码,有" & $i - 1 & "次机会输入" & @CRLF & "初始密码是bn3045800", "", "*", 180, 120, $ES_PASSWORD)
If Not @error Then
If $a == $p Then example()
Else
Exit
EndIf
Next
Func example()
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("修改密码", 281, 141, 386, 226)
$label1 = GUICtrlCreateLabel("原始密码:", 5, 15, 70, 20)
$label2 = GUICtrlCreateLabel("新密码:", 5, 45, 70, 20)
$label3 = GUICtrlCreateLabel("确认密码:", 5, 75, 70, 20)
$input1 = GUICtrlCreateInput("", 60, 10, 210, 21, BitOR($GUI_SS_DEFAULT_INPUT, $ES_PASSWORD))
$input2 = GUICtrlCreateInput("", 60, 40, 210, 21, BitOR($GUI_SS_DEFAULT_INPUT, $ES_PASSWORD))
$input3 = GUICtrlCreateInput("", 60, 70, 210, 21, BitOR($GUI_SS_DEFAULT_INPUT, $ES_PASSWORD))
$btn = GUICtrlCreateButton("确定", 40, 100, 80, 30)
$btn1 = GUICtrlCreateButton("取消", 150, 100, 80, 30)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
;RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Run","gongjumima","REG_SZ","123")
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $btn
Example1()
Case $btn1
Exit
EndSwitch
WEnd
EndFunc ;==>example
Func Example1()
$regkey = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Run", "gongjumima")
$p1 = GUICtrlRead($input1)
$p2 = GUICtrlRead($input2)
$p3 = GUICtrlRead($input3)
If $p1 = '' Or $p2 = '' Or $p3 = '' Then
MsgBox(64, "警告", "密码不能为空")
Else
If $p1 <> $regkey Then
MsgBox(64, "警告", "原始密码错")
Else
If $p2 <> $p3 Then
MsgBox(64, "警告", "两次输入密码不一致")
Else
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Run", "gongjumima", "REG_SZ", $p2)
MsgBox(0, "恭喜", "密码修改完成")
EndIf
EndIf
EndIf
EndFunc ;==>Example1 回复 11# 410521a
呵呵!没什么,应该的。
这帖刚出来我就看见了,一直没有出手帮忙也是有原因的。
1:刚做完手术,在床上躺着,实在不方便,勉强能上来学习学习已经不错了。
2:实在不喜欢楼主求知的态度,一味的嚷嚷有什么用呢!不如自己去翻翻帮助文件,看看基本函数、或者论坛上搜索看看,“与其一味的求助,不如看看基本函数”
希望我这样说不会打击到楼主学习Au3的信心,因为我并没有资格说这些。
大家都是新人,我也是新人,所以我非常理解新人的求知欲和痛苦。
顺便和新人们分享下我个人的学习方法(高手飘过)
1:遇到问题卡住了,先静下来看看自己的代码思路、结构是否合理,是不是还有自己没考虑到的地方,多检查检查。
2:多用MsgBox、_ArrayDisplay 等函数 输出变量值看看是否正确
3:善用搜索,相信自己的问题 他人也可能遇到过。
4:多做些类似问题的简单例子看看是否正常,主要是为了将问题简单化具体化。
5:再苦想N天
6:实在没辙了,求助吧!
这是我个人学习Au3的笨方法!!! 水木兄生病了?还做了手术?
祝你早日恢复健康。 回复 13# 水木子
做手术? 。。。。。。祝你早日康复!!