Python獲取註冊表信息
數碼 6
本文將從以下幾個方面詳細介紹Python如何獲取註冊表信息。
註冊表是Windows操作系統中的一個重要資料庫,它記錄了系統中的各種軟硬體配置信息。在Windows中,程序可以利用註冊表保存和獲取信息,例如保存程序配置信息和獲取系統資源信息等。
Python中可以通過winreg模塊來操作註冊表。winreg提供了執行創建、打開、關閉和刪除註冊表項的函數,以及讀取、寫入和刪除註冊表中的鍵和值的函數。
import winreg # 創建註冊表項 key = winreg.CreateKey(winreg.HKEY_CURRENT_USER, "Software\\MyApp") # 打開註冊表項 key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, "Software\\MyApp", 0, winreg.KEY_READ) # 關閉註冊表項 winreg.CloseKey(key) # 刪除註冊表項 winreg.DeleteKey(winreg.HKEY_CURRENT_USER, "Software\\MyApp")
import winreg # 讀取鍵值 key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, "Software\\MyApp", 0, winreg.KEY_READ) value, type = winreg.QueryValueEx(key, "Name") print(value) winreg.CloseKey(key) # 寫入鍵值 key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, "Software\\MyApp", 0, winreg.KEY_WRITE) winreg.SetValueEx(key, "Version", 0, winreg.REG_SZ, "1.0") winreg.CloseKey(key) # 刪除鍵值 key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, "Software\\MyApp", 0, winreg.KEY_WRITE) winreg.DeleteValue(key, "Version") winreg.CloseKey(key)
通過讀取註冊表,我們可以獲取系統中一些重要的信息,例如計算機名、用戶名、IP地址、系統版本等。
import winreg # 獲取計算機名 key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, r"SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName") name, type = winreg.QueryValueEx(key, "ComputerName") print(name) winreg.CloseKey(key) # 獲取用戶名 key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, r"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon") username, type = winreg.QueryValueEx(key, "DefaultUserName") print(username) winreg.CloseKey(key)
import winreg # 獲取IP地址 key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, r"SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces") for i in range(winreg.QueryInfoKey(key)[0]): subkey = winreg.EnumKey(key, i) interface_key = winreg.OpenKey(key, subkey) value, type = winreg.QueryValueEx(interface_key, "IPAddress") print(value) winreg.CloseKey(interface_key) winreg.CloseKey(key)
import winreg # 獲取系統版本 key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, r"SOFTWARE\Microsoft\Windows NT\CurrentVersion") version, type = winreg.QueryValueEx(key, "ProductName") print(version) winreg.CloseKey(key)
通過以上代碼示例,我們可以看到Python獲取註冊表信息的便捷性和靈活性,它可以幫助我們輕鬆地讀取和寫入註冊表信息,甚至幫助我們獲取系統信息,為我們的程序開發提供了更多的可能性。