0
我試圖打印保存在Windows註冊表中的網絡歷史記錄,並且遇到了一個障礙。如何在Python中使用_winreg打印網絡歷史記錄?
我有兩個功能。一個用於轉換二進制文本,另一個用於獲取實際數據。
以下是我有:
def val2addr(val):
addr = ""
for ch in val:
addr += ("%02x "% ord(ch))
addr = addr.strip(" ").replace(" ", ":")[0:17]
return addr
def printNets():
net = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\Unmanaged"
key = OpenKey(HKEY_LOCAL_MACHINE, net)
print key
print '\n[*] Networks You have Joined.'
for i in range(100):
try:
guid = EnumKey(key, i)
netKey = OpenKey(key, str(guid))
(n, addr, t) = EnumValue(netKey, 5)
macAddr = val2addr(addr)
netName = str(name)
print '[+] ' + netName + ' ' + macAddr
CloseKey(netKey)
except:
break
我相信錯誤是在此GUID值:
for i in range(100):
try:
guid = EnumKey(key, i)
netKey = OpenKey(key, str(guid))
(n, addr, t) = EnumValue(netKey, 5)
當我在自己獨立運行「試試看」的子碼它拋出了一句:
[錯誤259]沒有更多數據可用
指向guid值。
我認爲這是我卡住的地方。我在查找錯誤時遇到了問題,因爲它只是被拋到了除了代碼之外,因此沒有給我任何反饋。
請幫忙!!!
編輯:從我正在挖掘它可能是由於在64位系統上運行32位Python。儘管如此,仍在挖掘。
我剛剛更新蟒蛇到64位來 – RabidGorilla