home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2010 November / maximum-cd-2010-11.iso / DiscContents / calibre-0.7.13.msi / file_2467 (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2010-08-06  |  1.7 KB  |  33 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4. import win32api
  5. import win32security
  6. import win32con
  7. import ntsecuritycon
  8. import winnt
  9. import os
  10. temp_dir = win32api.GetTempPath()
  11. fname = win32api.GetTempFileName(temp_dir, 'rsk')[0]
  12. print fname
  13. os.remove(fname)
  14. required_privs = ((win32security.LookupPrivilegeValue('', ntsecuritycon.SE_BACKUP_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', ntsecuritycon.SE_RESTORE_NAME), win32con.SE_PRIVILEGE_ENABLED))
  15. ph = win32api.GetCurrentProcess()
  16. th = win32security.OpenProcessToken(ph, win32con.TOKEN_READ | win32con.TOKEN_ADJUST_PRIVILEGES)
  17. adjusted_privs = win32security.AdjustTokenPrivileges(th, 0, required_privs)
  18.  
  19. try:
  20.     sa = win32security.SECURITY_ATTRIBUTES()
  21.     my_sid = win32security.GetTokenInformation(th, ntsecuritycon.TokenUser)[0]
  22.     sa.SECURITY_DESCRIPTOR.SetSecurityDescriptorOwner(my_sid, 0)
  23.     (k, disp) = win32api.RegCreateKeyEx(win32con.HKEY_CURRENT_USER, 'Python test key', SecurityAttributes = sa, samDesired = win32con.KEY_ALL_ACCESS, Class = 'some class', Options = 0)
  24.     win32api.RegSetValue(k, None, win32con.REG_SZ, 'Default value for python test key')
  25.     (subk, disp) = win32api.RegCreateKeyEx(k, 'python test subkey', SecurityAttributes = sa, samDesired = win32con.KEY_ALL_ACCESS, Class = 'some other class', Options = 0)
  26.     win32api.RegSetValue(subk, None, win32con.REG_SZ, 'Default value for subkey')
  27.     win32api.RegSaveKeyEx(k, fname, Flags = winnt.REG_STANDARD_FORMAT, SecurityAttributes = sa)
  28.     (restored_key, disp) = win32api.RegCreateKeyEx(win32con.HKEY_CURRENT_USER, 'Python test key(restored)', SecurityAttributes = sa, samDesired = win32con.KEY_ALL_ACCESS, Class = 'restored class', Options = 0)
  29.     win32api.RegRestoreKey(restored_key, fname)
  30. finally:
  31.     win32security.AdjustTokenPrivileges(th, 0, adjusted_privs)
  32.  
  33.