Python检查windows服务器版本
出于报告目的,我需要在python应用程序中记录当前的windows版本,但到目前为止,我发现的内置函数无法区分windows客户端和服务器版本:Python检查windows服务器版本,python,windows,Python,Windows,出于报告目的,我需要在python应用程序中记录当前的windows版本,但到目前为止,我发现的内置函数无法区分windows客户端和服务器版本: os.sys.getwindowsversion() (6, 0, 6002, 2, 'Service Pack 2') platform.release() 'Vista' platform.win32_ver() ('Vista', '6.0.6002', 'SP2', 'Multiprocessor Free') 这些函数在Windows V
os.sys.getwindowsversion()
(6, 0, 6002, 2, 'Service Pack 2')
platform.release()
'Vista'
platform.win32_ver()
('Vista', '6.0.6002', 'SP2', 'Multiprocessor Free')
这些函数在Windows Vista和Windows Server 2008上返回相同的值(因为它们共享相同的版本号)
有没有办法获得正确的windows版本?您可以使用Win32 API并检查wProductType
的值来区分
看看包裹
版本\n域\u控制器0x0000002
该系统是一个域控制器和
操作系统是Windows Server
2008、Windows Server 2003或Windows
2000服务器
版本服务器0x0000003
操作系统是Windows Server
2008、Windows Server 2003或Windows
2000服务器
请注意,服务器也是
域控制器报告为
版本域控制器,不是
版本服务器
版本工作站0x0000001
操作系统是Windows Vista,
Windows XP专业版
家庭版或Windows 2000
专业的
尝试使用WMI类获取它(
ProductType
is3
在服务器系统上)。可以为此生成Python代码 当前充当域控制器的服务器上的ProductType为2。您也可以使用wmic os get OperatingSystemSKU。只要您使用的是Windows Vista或更新版本(看起来您是),该属性就应该存在。此处将显示SKU的值列表。