[Python-checkins] CVS: python/dist/src/Lib/plat-win winreg.py,1.1,1.2

Fred L. Drake python-dev@python.org
Fri, 30 Jun 2000 13:31:41 -0700


Update of /cvsroot/python/python/dist/src/Lib/plat-win
In directory slayer.i.sourceforge.net:/tmp/cvs-serv7849/Lib/plat-win

Modified Files:
	winreg.py 
Log Message:

Ooops!  I didn't finish all the renaming needed here, so this was
attempting a recursive import and causing a fatal error.


Index: winreg.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/plat-win/winreg.py,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** winreg.py	2000/06/29 16:53:06	1.1
--- winreg.py	2000/06/30 20:31:39	1.2
***************
*** 1,3 ****
! import winreg
  import sys
  import exceptions
--- 1,3 ----
! import _winreg
  import sys
  import exceptions
***************
*** 10,14 ****
          self.msname=msname
          self.friendlyname=friendlyname
!         self.intval=getattr( winreg, msname )
  
      def __repr__( self ):
--- 10,14 ----
          self.msname=msname
          self.friendlyname=friendlyname
!         self.intval=getattr( _winreg, msname )
  
      def __repr__( self ):
***************
*** 17,44 ****
  
  _typeConstants={ 
!     winreg.REG_NONE: 
          RegType( "REG_NONE", "None" ),
!     winreg.REG_SZ: 
          RegType( "REG_SZ", "String" ),
!     winreg.REG_EXPAND_SZ: 
          RegType("REG_EXPAND_SZ", "Expandable Template String" ),
!     winreg.REG_BINARY: 
          RegType("REG_BINARY", "Binary Data"),
!     winreg.REG_DWORD : 
          RegType("REG_DWORD", "Integer" ),
! #    winreg.REG_DWORD_LITTLE_ENDIAN : 
  #        RegType("REG_DWORD_LITTLE_ENDIAN", "Integer"),
!     winreg.REG_DWORD_BIG_ENDIAN : 
          RegType("REG_DWORD_BIG_ENDIAN", "Big Endian Integer"),
!     winreg.REG_LINK : 
          RegType("REG_LINK", "Link"),
!     winreg.REG_MULTI_SZ : 
          RegType("REG_MULTI_SZ", "List of Strings"),
!     winreg.REG_RESOURCE_LIST : 
          RegType("REG_RESOURCE_LIST", "Resource List"),
!     winreg.REG_FULL_RESOURCE_DESCRIPTOR : 
          RegType( "REG_FULL_RESOURCE_DESCRIPTOR", 
                                              "Full Resource Descriptor" ),
!     winreg.REG_RESOURCE_REQUIREMENTS_LIST: 
          RegType( "REG_RESOURCE_REQUIREMENTS_LIST", 
                                              "Resource Requirements List" )
--- 17,44 ----
  
  _typeConstants={ 
!     _winreg.REG_NONE: 
          RegType( "REG_NONE", "None" ),
!     _winreg.REG_SZ: 
          RegType( "REG_SZ", "String" ),
!     _winreg.REG_EXPAND_SZ: 
          RegType("REG_EXPAND_SZ", "Expandable Template String" ),
!     _winreg.REG_BINARY: 
          RegType("REG_BINARY", "Binary Data"),
!     _winreg.REG_DWORD : 
          RegType("REG_DWORD", "Integer" ),
! #    _winreg.REG_DWORD_LITTLE_ENDIAN : 
  #        RegType("REG_DWORD_LITTLE_ENDIAN", "Integer"),
!     _winreg.REG_DWORD_BIG_ENDIAN : 
          RegType("REG_DWORD_BIG_ENDIAN", "Big Endian Integer"),
!     _winreg.REG_LINK : 
          RegType("REG_LINK", "Link"),
!     _winreg.REG_MULTI_SZ : 
          RegType("REG_MULTI_SZ", "List of Strings"),
!     _winreg.REG_RESOURCE_LIST : 
          RegType("REG_RESOURCE_LIST", "Resource List"),
!     _winreg.REG_FULL_RESOURCE_DESCRIPTOR : 
          RegType( "REG_FULL_RESOURCE_DESCRIPTOR", 
                                              "Full Resource Descriptor" ),
!     _winreg.REG_RESOURCE_REQUIREMENTS_LIST: 
          RegType( "REG_RESOURCE_REQUIREMENTS_LIST", 
                                              "Resource Requirements List" )
***************
*** 129,133 ****
  class RegKeysDict( _DictBase ):
      def _nameFromNum( self, item ):
!         return winreg.EnumKey( self.key.handle, item )
  
      def __getitem__( self, item ):
--- 129,133 ----
  class RegKeysDict( _DictBase ):
      def _nameFromNum( self, item ):
!         return _winreg.EnumKey( self.key.handle, item )
  
      def __getitem__( self, item ):
***************
*** 163,167 ****
  class RegKey:
      def _nameFromNum( self, item ):
!         (name,data,datatype)=winreg.EnumValue( self.handle, item )
          return name
  
--- 163,167 ----
  class RegKey:
      def _nameFromNum( self, item ):
!         (name,data,datatype)=_winreg.EnumValue( self.handle, item )
          return name
  
***************
*** 186,190 ****
  
      def close(self ):
!         return winreg.CloseKey( self.handle )
  
      def getSubkeyNames( self ):
--- 186,190 ----
  
      def close(self ):
!         return _winreg.CloseKey( self.handle )
  
      def getSubkeyNames( self ):
***************
*** 195,212 ****
  
      def deleteSubkey( self, subkey ):
!         return winreg.DeleteKey( self.handle, subkey )
          
      def deleteValue( self, valname ):
!         return winreg.DeleteValue( self.handle, valname )
  
      def createSubkey( self, keyname ):
!         handle=winreg.CreateKey( self.handle, keyname )
          return RegKey( self.name+"\\"+keyname, handle)
  
      def openSubkey( self, keyname, samFlags=None ):
          if samFlags:
!             handle=winreg.OpenKey( self.handle, keyname, 0, samFlags )
          else:
!             handle=winreg.OpenKey( self.handle, keyname, 0 )
          return RegKey( self.name+"\\"+keyname, handle )
  
--- 195,212 ----
  
      def deleteSubkey( self, subkey ):
!         return _winreg.DeleteKey( self.handle, subkey )
          
      def deleteValue( self, valname ):
!         return _winreg.DeleteValue( self.handle, valname )
  
      def createSubkey( self, keyname ):
!         handle=_winreg.CreateKey( self.handle, keyname )
          return RegKey( self.name+"\\"+keyname, handle)
  
      def openSubkey( self, keyname, samFlags=None ):
          if samFlags:
!             handle=_winreg.OpenKey( self.handle, keyname, 0, samFlags )
          else:
!             handle=_winreg.OpenKey( self.handle, keyname, 0 )
          return RegKey( self.name+"\\"+keyname, handle )
  
***************
*** 220,231 ****
          try:
              if type( valname )==IntType:
!                 (valname,data,datatype)=winreg.EnumValue( self.handle, valname )
              else:
                  keyname=_getName( valname, self._nameFromNum )
!                 (data,datatype)=winreg.QueryValueEx( self.handle, keyname )
          except (WindowsError, EnvironmentError):
              raise IndexError, valname
  
!         if datatype==winreg.REG_BINARY:
              # use arrays for binary data
              data=array.array( 'c', data )
--- 220,231 ----
          try:
              if type( valname )==IntType:
!                 (valname,data,datatype)=_winreg.EnumValue( self.handle, valname )
              else:
                  keyname=_getName( valname, self._nameFromNum )
!                 (data,datatype)=_winreg.QueryValueEx( self.handle, keyname )
          except (WindowsError, EnvironmentError):
              raise IndexError, valname
  
!         if datatype==_winreg.REG_BINARY:
              # use arrays for binary data
              data=array.array( 'c', data )
***************
*** 242,261 ****
          else:
              if type( data )==StringType:
!                 typeint=winreg.REG_SZ
              elif type( data )==IntType:
!                 typeint=winreg.REG_DWORD
              elif type( data )==array.ArrayType:
!                 typeint=winreg.REG_BINARY
                  data=data.tostring()
!         winreg.SetValueEx( self.handle, valname, 0, typeint, data )
  
      def flush(self ):
!         winreg.FlushKey( self.keyobbj )
  
      def save( self, filename ):
!         winreg.SaveKey( self.keyobj, filename )
  
      def load( self, subkey, filename ):
!         return winreg.RegLoadKey( self.handle, subkey, filename )
  
  
--- 242,261 ----
          else:
              if type( data )==StringType:
!                 typeint=_winreg.REG_SZ
              elif type( data )==IntType:
!                 typeint=_winreg.REG_DWORD
              elif type( data )==array.ArrayType:
!                 typeint=_winreg.REG_BINARY
                  data=data.tostring()
!         _winreg.SetValueEx( self.handle, valname, 0, typeint, data )
  
      def flush(self ):
!         _winreg.FlushKey( self.keyobbj )
  
      def save( self, filename ):
!         _winreg.SaveKey( self.keyobj, filename )
  
      def load( self, subkey, filename ):
!         return _winreg.RegLoadKey( self.handle, subkey, filename )
  
  
***************
*** 263,267 ****
      def __init__( self, machine, topLevelKey ):
          assert topLevelKey in _hivenames 
!         self.handle =  winreg.ConnectRegistry( machine, parentKey )
          self.name=r"\\%s\%s" % (machine, topLevelKey )
  
--- 263,267 ----
      def __init__( self, machine, topLevelKey ):
          assert topLevelKey in _hivenames 
!         self.handle =  _winreg.ConnectRegistry( machine, parentKey )
          self.name=r"\\%s\%s" % (machine, topLevelKey )
  
***************
*** 271,275 ****
  hives={}
  for name in _hivenames:
!     hives[name]=RegKey( name, getattr( winreg, name ) )
  hives["HKLM"]=hives["HKEY_LOCAL_MACHINE"]
  hives["HKCR"]=hives["HKEY_CLASSES_ROOT"]
--- 271,275 ----
  hives={}
  for name in _hivenames:
!     hives[name]=RegKey( name, getattr( _winreg, name ) )
  hives["HKLM"]=hives["HKEY_LOCAL_MACHINE"]
  hives["HKCR"]=hives["HKEY_CLASSES_ROOT"]
***************
*** 281,285 ****
  flags={}
  for name in _flagnames:
!     flags[name]=getattr( winreg, name )
  
  _RegNotifyChangeKeyValueOptions=[ "REG_NOTIFY_CHANGE_ATTRIBUTES",
--- 281,285 ----
  flags={}
  for name in _flagnames:
!     flags[name]=getattr( _winreg, name )
  
  _RegNotifyChangeKeyValueOptions=[ "REG_NOTIFY_CHANGE_ATTRIBUTES",
***************
*** 312,316 ****
  
  #allnames=_hivenames+_flagnames+typeConstantNames+unusednames
! #winregnames=winreg.__dict__.keys()
  #for name in winregnames:
  #    if name not in allnames:
--- 312,316 ----
  
  #allnames=_hivenames+_flagnames+typeConstantNames+unusednames
! #winregnames=_winreg.__dict__.keys()
  #for name in winregnames:
  #    if name not in allnames: