Upendra Kumar added the comment:

I am unable to print anything using winreg module. Does it require 
administrative privileges?

I am using this code sample :

import os
import errno
import winreg

proc_arch = os.environ['PROCESSOR_ARCHITECTURE'].lower()
try:
        proc_arch64 = os.environ['PROCESSOR_ARCHITEW6432'].lower()
except KeyError:
        proc_arch64 = None
        pass

if proc_arch == 'x86' and not proc_arch64:
        arch_keys = {0}
elif proc_arch == 'x86' or proc_arch == 'amd64':
        arch_keys = {winreg.KEY_WOW64_32KEY, winreg.KEY_WOW64_64KEY}
else:
        raise Exception("Unhandled arch {}".format(proc_arch))
        
for arch_key in arch_keys:
        key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, r"SOFTWARE\Python", 0, 
winreg.KEY_READ | arch_key)
        for i in range(0, winreg.QueryInfoKey(key)[0]):
                skey_name = winreg.EnumKey(key, i)
                skey = winreg.OpenKey(key, skey_name)
                try:
                        print(winreg.QueryValueEx(skey, 'DisplayName')[0])
                except OSError as e:
                        if e.errno == errno.ENOENT:
                                pass
                finally:
                        skey.Close()

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue27051>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to