成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

用戶自己修改Windows域賬號(hào)密碼 的VB2010代碼

用戶自己修改Windows 域賬號(hào)密碼 的VB2010代碼(2013-06-12 19:26:46)用戶自己修改Windows 域賬號(hào)密碼 的VB2010代碼,如下是我專研的結(jié)果,以下代碼適用于Win

用戶自己修改Windows 域賬號(hào)密碼 的VB2010代碼

(2013-06-12 19:26:46)

用戶自己修改Windows 域賬號(hào)密碼 的VB2010代碼,如下是我專研的結(jié)果,以下代碼適用于Windows 2000以上任何域環(huán)境下,而且任何任何域名下,生成應(yīng)用程序之后在任何域名任何Windows AD 域環(huán)境下都可以用,包括最新的Windows Server 2012域環(huán)境下都可以用。

Imports System.DirectoryServices

Public Class Form1

Public Err As String

Public PWD_Changed As Boolean = False

Public P_Rund As Boolean = False

Public DomainName As String = ""

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click If Me.OldPassword.Text = "" And Me.NewPassword.Text = "" And Me.ComfirmPassword.Text = "" Then

Err = "舊密碼不能為空!"

Me.OldPassword.Focus()

ElseIf Me.OldPassword.Text = "" And Me.NewPassword.Text <> "" And Me.ComfirmPassword.Text <> "" Then Err = "舊密碼不能為空!"

Me.OldPassword.Focus()

ElseIf Me.OldPassword.Text <> "" And Me.NewPassword.Text = "" And Me.ComfirmPassword.Text = "" Then Err = "新密碼不能為空!"

Me.NewPassword.Focus()

ElseIf Me.OldPassword.Text <> "" And Me.NewPassword.Text <> "" And Me.ComfirmPassword.Text = "" Then Err = "新密碼不能為空!"

Me.ComfirmPassword.Focus()

Else

If Me.ComfirmPassword.Text <> Me.NewPassword.Text And Me.OldPassword.Text <> "" Then

Me.NewPassword.Text = ""

Me.ComfirmPassword.Text = ""

Me.NewPassword.Focus()

Err = "您兩次輸入的新密碼不一樣!"

Else

Call Change_Password()

End If

End If

PWD_Status.Clear()

If PWD_Changed = True Then

PWD_Status.Text = Err

Me.Button3.Enabled = False

Exit Sub

End If

If P_Rund = True Then

PWD_Status.Text = Err

Me.OldPassword.Text = ""

Me.NewPassword.Text = ""

Me.ComfirmPassword.Text = ""

Me.OldPassword.Focus()

P_Rund = False

Exit Sub

,

End If

PWD_Status.Text = Err

End Sub

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

TxtAccount.Text = System.Environment.UserName

TxtAccount.Enabled = False

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '當(dāng)關(guān)閉程序的時(shí)候釋放資源

Me.Close()

Me.Dispose()

End

End Sub

Private Sub Change_Password()

Dim UserName As String = TxtAccount.Text

Dim Oldpassword As String = Me.OldPassword.Text

Dim NewPassword As String = Me.NewPassword.Text

Dim Domain_IP As String = System.DirectoryServices.ActiveDirectory.Domain.GetCurrentDomain.Forest.Name 'PDC Server IP Address Or Domain Name

Dim Domain As String = GetDomainName(System.DirectoryServices.ActiveDirectory.Domain.GetCurrentDomain.Forest.Name)

Dim Ds_Path As String = "LDAP://" & Domain_IP & "/" & Domain

P_Rund = True

Try

'Login AD by userid

Dim AD As New DirectoryEntry(Ds_Path, UserName, Oldpassword)

Dim DeSearch As DirectorySearcher = New DirectorySearcher

DeSearch.SearchRoot = AD

DeSearch.Filter = "(&(objectClass=user)(sAMAccountName=" UserName "))"

DeSearch.SearchScope = SearchScope.Subtree

Dim Results As SearchResult = DeSearch.FindOne()

If Not (Results Is Nothing) Then

AD = New DirectoryEntry(Results.Path, UserName, Oldpassword, AuthenticationTypes.Secure)

'Change Password

AD.Invoke("ChangePassword", New Object() {Oldpassword, NewPassword})

AD.CommitChanges()

Err = "密碼更改成功,請(qǐng)記住您的新密碼!"

PWD_Changed = True

AD.Dispose()

DeSearch.Dispose()

AD.Close()

End If

Catch ex As Exception

If Not (ex.InnerException Is Nothing) Then

'Err = ex.Message & " " & ex.InnerException.Message

Err = ex.InnerException.Message

Else

Err = ex.Message

End If

,

'Return

'Throw New Exception("User Password cannot be set" & ex.Message) 'err = de.InvokeGet("ChangePassword").ToString & " "

End Try

End Sub

Private Function GetDomainName(ByVal Domain As String) As String Dim SplitStr As String() = Nothing

Dim DomainName As String = ""

'Domain

If Domain.Contains(".") Then

SplitStr = Domain.Split("."c)

For Each item As String In SplitStr

If DomainName = "" Then

DomainName = "DC=" & item

Else

DomainName = "," & "DC=" & item

End If

Next

Else

DomainName = "DC=" & Domain

End If

Return DomainName

End Function

End Class

標(biāo)簽: