@@ -535,10 +535,6 @@ def win32_ver(release='', version='', csd='', ptype=''):
535
535
from sys import getwindowsversion
536
536
except ImportError :
537
537
return release , version , csd , ptype
538
- try :
539
- from winreg import OpenKeyEx , QueryValueEx , CloseKey , HKEY_LOCAL_MACHINE
540
- except ImportError :
541
- from _winreg import OpenKeyEx , QueryValueEx , CloseKey , HKEY_LOCAL_MACHINE
542
538
543
539
winver = getwindowsversion ()
544
540
maj , min , build = winver .platform_version or winver [:3 ]
@@ -564,16 +560,20 @@ def win32_ver(release='', version='', csd='', ptype=''):
564
560
_WIN32_SERVER_RELEASES .get ((maj , None )) or
565
561
release )
566
562
567
- key = None
568
563
try :
569
- key = OpenKeyEx (HKEY_LOCAL_MACHINE ,
570
- r'SOFTWARE\Microsoft\Windows NT\CurrentVersion' )
571
- ptype = QueryValueEx (key , 'CurrentType' )[0 ]
572
- except :
564
+ try :
565
+ import winreg
566
+ except ImportError :
567
+ import _winreg as winreg
568
+ except ImportError :
573
569
pass
574
- finally :
575
- if key :
576
- CloseKey (key )
570
+ else :
571
+ try :
572
+ cvkey = r'SOFTWARE\Microsoft\Windows NT\CurrentVersion'
573
+ with winreg .OpenKeyEx (HKEY_LOCAL_MACHINE , cvkey ) as key :
574
+ ptype = QueryValueEx (key , 'CurrentType' )[0 ]
575
+ except :
576
+ pass
577
577
578
578
return release , version , csd , ptype
579
579
0 commit comments