0
我可以看到我的註冊表編輯器中的值,路徑是 。在windows 8上訪問windows版本的Python _winreg錯誤
我想打印的產品名,我可以看到的是Windows 8中,但是當我運行我的程序讓我的64位筆記本電腦上的Windows版本:
def get_registry_value(key, subkey, value):
import _winreg
key = getattr(_winreg, key)
handle = _winreg.OpenKey(key, subkey)
(value, type) = _winreg.QueryValueEx(handle, value)
return value
def os_version():
def get(key):
return get_registry_value(
"HKEY_LOCAL_MACHINE",
"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion",
key)
os = get("ProductName")
sp = get("CSDVersion")
build = get("CurrentBuildNumber")
return "%s %s (build %s)" % (os, sp, build)
我得到
WindowsError: Error[2] "The system cannot find the file specified"
,所以我修改了代碼爲
key = getattr(_winreg, key)
handle = _winreg.OpenKey(key, subkey ,0 ,_winreg.KEY_READ | _winreg.KEY_WOW64_64KEY)
,但我仍然得到同樣的錯誤 我做錯了哪一部分?我能做些什麼來獲取我的操作系統版本?
爲Windows 8 64位犯規工程 – rishabhr0y