python 获取windows系统是否激活 以及过期时间
时间: 2023-08-03 15:04:38 浏览: 216
python使用wmi模块获取windows下的系统信息 监控系统
可以使用 `winreg` 模块来获取 Windows 系统的激活状态和过期时间。具体实现如下:
```python
import winreg
import datetime
def get_windows_activation():
try:
key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, r'SOFTWARE\Microsoft\Windows NT\CurrentVersion')
value, _ = winreg.QueryValueEx(key, 'DigitalProductId')
winreg.CloseKey(key)
# Windows 激活状态
activated = bool(value[66])
# 过期时间
if activated:
start_date = datetime.date(1970, 1, 1)
expire_days = value[52] * 256 + value[53]
expire_date = start_date + datetime.timedelta(days=expire_days)
else:
expire_date = None
return activated, expire_date
except Exception as e:
print(e)
return None, None
# 获取 Windows 激活状态和过期时间
activated, expire_date = get_windows_activation()
if activated:
print('Windows 已激活,过期时间为:{}'.format(expire_date))
else:
print('Windows 未激活')
```
需要注意的是,此方法仅适用于 Windows 7 或更早版本的系统。Windows 8 和 Windows 10 的激活信息存储在不同的位置,需要根据具体的系统版本进行调整。
阅读全文