MCPcopy Create free account
hub / github.com/RT-Thread/env-windows / win32_ver

Function win32_ver

tools/python-3.11.9-amd64/Lib/platform.py:363–411  ·  view source on GitHub ↗
(release='', version='', csd='', ptype='')

Source from the content-addressed store, hash-verified

361 return None
362
363def win32_ver(release='', version='', csd='', ptype=''):
364 try:
365 from sys import getwindowsversion
366 except ImportError:
367 return release, version, csd, ptype
368
369 winver = getwindowsversion()
370 try:
371 major, minor, build = map(int, _syscmd_ver()[2].split('.'))
372 except ValueError:
373 major, minor, build = winver.platform_version or winver[:3]
374 version = '{0}.{1}.{2}'.format(major, minor, build)
375
376 release = (_WIN32_CLIENT_RELEASES.get((major, minor)) or
377 _WIN32_CLIENT_RELEASES.get((major, None)) or
378 release)
379
380 # getwindowsversion() reflect the compatibility mode Python is
381 # running under, and so the service pack value is only going to be
382 # valid if the versions match.
383 if winver[:2] == (major, minor):
384 try:
385 csd = 'SP{}'.format(winver.service_pack_major)
386 except AttributeError:
387 if csd[:13] == 'Service Pack ':
388 csd = 'SP' + csd[13:]
389
390 # VER_NT_SERVER = 3
391 if getattr(winver, 'product_type', None) == 3:
392 release = (_WIN32_SERVER_RELEASES.get((major, minor)) or
393 _WIN32_SERVER_RELEASES.get((major, None)) or
394 release)
395
396 try:
397 try:
398 import winreg
399 except ImportError:
400 import _winreg as winreg
401 except ImportError:
402 pass
403 else:
404 try:
405 cvkey = r'SOFTWARE\Microsoft\Windows NT\CurrentVersion'
406 with winreg.OpenKeyEx(winreg.HKEY_LOCAL_MACHINE, cvkey) as key:
407 ptype = winreg.QueryValueEx(key, 'CurrentType')[0]
408 except OSError:
409 pass
410
411 return release, version, csd, ptype
412
413
414def _mac_ver_xml():

Callers 2

unameFunction · 0.85
platformFunction · 0.85

Calls 5

_syscmd_verFunction · 0.85
mapFunction · 0.50
splitMethod · 0.45
formatMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected