我用我的Windows 7登錄到域。如何更改我的DC密碼
我想編程改變我的用戶密碼。
我試圖做「淨用戶/域」但我有Access拒絕錯誤。
我不想手動更改它(CTRL + ALT + DELETE,更改密碼...)。
我很樂意在命令行,python,C++或c#中獲得答案。
感謝,
瑪坦
我用我的Windows 7登錄到域。如何更改我的DC密碼
我想編程改變我的用戶密碼。
我試圖做「淨用戶/域」但我有Access拒絕錯誤。
我不想手動更改它(CTRL + ALT + DELETE,更改密碼...)。
我很樂意在命令行,python,C++或c#中獲得答案。
感謝,
瑪坦
不知道如何將它包含在C#中,但是Netapi32.dll庫合併了NetUserChangePassword函數。 http://msdn.microsoft.com/en-us/library/windows/desktop/aa370650%28v=vs.85%29.aspx
在python中,有兩種簡單的方法可以做到這一點。隨着ctypes的,你可以通過鍵入它包含:
from ctypes.wintypes import windll
ChangePassword = windll.Netapi32.NetUserChangePassword
然後通過鍵入更改密碼:
ChangePassword(domainname, username, oldpass, newpass)
「域名」可能爲零,如果你想分配當前登錄域的密碼。 不過,如果你已經安裝了Windows工具蟒蛇istalled,那麼你可以使用win32net更改密碼:
import win32net
win32net.NetUserChangePassword(domainname, username, oldpass, newpass)
再次,0可以用來代替域名。
您可以使用簡單的VB腳本(名爲changepass.vbs):
Dim UserDomain
Dim UserName
Dim NewPassword
UserDomain = WScript.Arguments.Item(0)
UserName = WScript.Arguments.Item(1)
NewPassword = WScript.Arguments.Item(2)
Set User = GetObject("WinNT://"& UserDomain &"/"& UserName & "")
Call User.SetPassword(NewPassword)
If err.number = 0 Then
Wscript.Echo "The password change was successful."
Else
Wscript.Echo "The password change failed!"
End if
它接受3個參數:域名,用戶名和新密碼。當前用戶必須有權更改密碼。如果你想在本地計算機上更改密碼提供「。」作爲域名。示例:
cscript changepass.vbs "YOUR_DOMAIN" "user1" "qw23442q"