標籤:desc version pass 工作 break access error: 優先 man
Python的WinReg項通過子鍵迴圈
python winreg
我能夠從我的窗戶下面的代碼檢索5子鍵7機器的註冊表登錄區“HKEY_LOCAL_MACHINE”。
from _winreg import *try: i = 0 while True: subkey = EnumKey(HKEY_LOCAL_MACHINE, i) print subkey i += 1except WindowsError: pass
我的問題是,我怎麼再根據這些按鍵?我想最後列出了所有的鑰匙在SOFTWARE \\ MICROSOFT \\ Windows NT的\\ CURRENTVERSION \\ NetworkList \\簽名\\不受管理的檔案夾,但我無法弄清楚如何加強我的路在那裡。 在回答優先個我跑我的機器上驗證碼,雖然它並沒有錯誤時,它並沒有產生結果。
from _winreg import *aReg = ConnectRegistry(None,HKEY_LOCAL_MACHINE)aKey = OpenKey(aReg, r"SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\Unmanaged")for i in range(1024): try: keyname = EnumKey(aKey, i) asubkey = OpenKey(aKey, keyname) val = QueryValueEx(asubkey, "Description") print val except WindowsError: break
à登錄編輯程式或寄存器的查詢顯示該檔案夾中的6個值,但我不能讓一個python指令碼,這六個。
本文地址 :CodeGo.net/8981951/
-------------------------------------------------------------------------------------------------------------------------
1.請問像這樣的工作?
import _winregdef subkeys(key): i = 0 while True: try: subkey = _winreg.EnumKey(key, i) yield subkey i+=1 except WindowsError: breakdef traverse_registry_tree(key=_winreg.HKEY_LOCAL_MACHINE, tabs=0): for k in subkeys(key): print ‘\t‘*tabs + str(k) traverse_registry_tree(k, tabs+1)
2. 我沒有註冊表鍵搜尋,但下面的代碼將列出在HKEY_LOCAL_MACHINE \\ SOFTWARE所有子項。我認為,如果你改變了KEYVAL串到你的目錄中,將工作的價值。 該try ... except整體是這樣EnumKey將失敗。我沒有做它作為一個迴圈我不知道怎麼去AKEY的正確長度。
keyVal = r"Software"aKey = OpenKey(HKEY_LOCAL_MACHINE, keyVal, 0, KEY_ALL_ACCESS)try: i = 0 while True: asubkey = EnumKey(aKey, i) print(asubkey) i += 1except WindowsError: pass
本文標題 :Python的WinReg項通過子鍵迴圈
本文地址 :CodeGo.net/8981951/
轉 Python的WinReg項通過子鍵迴圈