[python-win32] Python and registry access with UAC enabled

Preston Landers planders at gmail.com
Tue Apr 26 17:13:07 CEST 2011


Not sure if this solves the actual problem you're having, but I wrote a
small script to relaunch a process as an admin using UAC.  Hopefully this
helps somehow.

http://dl.dropbox.com/u/11450437/pyuac.py

thanks,
-Preston

On Mon, Apr 25, 2011 at 8:45 PM, Michael ODonnell <odonnems at yahoo.com>wrote:

> I have recently migrated to windows 7 from Windows XP. My organization
> enables UAC (level 3) at the group policy level and therefore I cannot
> disable it. I would like to know where there is a method to make registry
> changes using a python script without disabling UAC. For example, I can read
> registry hives and keys but I cannot write to them:
>
> import _winreg
>
> # Successful read
> RegConn = _winreg.ConnectRegistry(None, _winreg.HKEY_LOCAL_MACHINE)
> keyStr = r'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\1033'
> key = _winreg.OpenKey(RegConn, keyStr, 0, _winreg.KEY_READ |
> _winreg.KEY_WOW64_32KEY)
> print _winreg.QueryValueEx(key, "Version")[0]
>
> # Unsuccessful write
>
> x = _winreg.ConnectRegistry(None, _winreg.HKEY_LOCAL_MACHINE)
> y = _winreg.OpenKey(x, r"SYSTEM\CurrentControlSet\Control\Session
> Manager\Environment", 0, _winreg.KEY_ALL_ACCESS)
> _winreg.SetValueEx(y, "path", 0, _winreg.REG_EXPAND_SZ,path + ";C:\\test")
> _winreg.CloseKey(y)
> _winreg.CloseKey(x)
>
> I have compiled my code as an EXE and created a manifest and using the
> trustinfo xml node, but this will also not work for me. I am always logged
> in as an administrator. Can anyone provide me with some suggestions on how I
> can work through this. Also, on a personal Windows 7 64bit machine, if I
> disable UAC, I can successfully write to the registry.
>
>
> Thank you,
> Mike
> _______________________________________________
> python-win32 mailing list
> python-win32 at python.org
> http://mail.python.org/mailman/listinfo/python-win32
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-win32/attachments/20110426/f3e763c9/attachment.html>


More information about the python-win32 mailing list