2014-04-17 54 views
1

嗨,我試着去理解這段代碼。我知道它在註冊表中獲取網關名稱和mac地址,但是當我嘗試運行此代碼時,它不顯示任何內容。有人可以給我關於winreg的鏈接,它有基本的例子。謝謝Python winreg不打印

from winreg import * 
def val2addr(val): 
    addr = '' 
    for ch in val: 
     addr += '%02x '% ord(ch) 
    addr = addr.strip(' ').replace(' ', ':')[0:17] 
    return addr 

def printNets(): 
    net = r"SOFTWARE\Microsoft\Windows  NT\CurrentVersion\NetworkList\Signatures\Unmanaged" 
    key = OpenKey(HKEY_LOCAL_MACHINE, net) 
    print ("[*] 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) 
      (n, name, t) = EnumValue(netKey, 4) 
      macAddr = val2addr(addr) 
      netName = str(name) 
      print ('[+] ' + netName + ' ' + macAddr) 
      CloseKey(netKey) 
     except: 
      break 

def main(): 
    printNets() 
if __name__ == "__main__": 
    main() 
+0

你好嗎? – aIKid

+0

在python 3.3中使用sublime文本編輯器 – Newboy11

回答

0
  1. 模塊documentation。閱讀它來理解函數參數/返回。
  2. Example顯示註冊表鍵值/當前用戶信息。
  3. 一個非常徹底的recipe顯示winreg可以做很多事情。