# -*- coding: Windows-1251 -*- ''' getenv_system.py Get SYSTEM environment value, as if running under Service or SYSTEM account Author: Denis Barmenkov <denis.barmenkov@gmail.com> Copyright: this code is free, but if you want to use it, please keep this multiline comment along with function source. Thank you. 2006-01-28 15:30 ''' import os, win32api, win32con def getenv_system(varname, default=''): v = default try: rkey = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE, 'SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment') try: v = str(win32api.RegQueryValueEx(rkey, varname)[0]) v = win32api.ExpandEnvironmentStrings(v) except: pass finally: win32api.RegCloseKey(rkey) return v print 'SYSTEM.TEMP => %s' % getenv_system('TEMP') print 'USER.TEMP => %s' % os.getenv('TEMP')