"Use the Windows Registry like a king"
A Modern Python wrapper for the Windows Registry (wrapping winreg)
Python Windows Registry Module
Access Registry like a dict
pip install winregal
Use winregal.RegKey along with the 'with' statement to access any key of your choice. winregal handles key opening and closing for you and makes iteration really simple.
Example : Print Putty sessions
In[2]: from winregal import RegKey
In[3]: with RegKey("HKEY_CURRENT_USER\SOFTWARE\SimonTatham\PuTTY\Sessions") as key:
... print(key.to_dict())
...
{'Server1: {'UserName': u'user', 'HostName': u'192.168.48.131', ... },
'Server2': {'UserName': u'user', 'HostName': u'192.168.48.132', ... }}
Example : Print most recently run commands(RunMru)
In[1]: with RegKey("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU") as key:
... for item in key:
... if isinstance(item, RegValue):
... print(item.name, item.data)
...
('a', u'cmd\\1')
('b', u'winword\\1')
('c', u'notepad\\1')
('d', u'control\\1')
('e', u'regedit\\1')
('f', u'calc\\1')
('j', u'notepad++\\1')
In[10]: with RegKey("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerRunMRU") as key: ... print(key['a'].data) ... cmd1
- Support ConnectRegistry (via RegKey.__init__)
- Wrap Edit/Save/Delete operations: e.g. CreateKey, DeleteKey, DeleteValue, SetValue, SaveKey
Contact me (py@bitweis.com) if you need these anytime soon.