--- a/Win32OperatingSystem.st Thu Dec 23 23:56:00 1999 +0100
+++ b/Win32OperatingSystem.st Thu Dec 23 23:59:25 1999 +0100
@@ -6975,32 +6975,34 @@
!
rootKeyValueFor:specialKeyStringOrSymbol
+ HKEY_CLASSES_ROOT isNil ifTrue:[self initialize].
+
specialKeyStringOrSymbol = 'HKEY_CLASSES_ROOT' ifTrue:[
- ^ HKEY_CLASSES_ROOT.
+ ^ HKEY_CLASSES_ROOT.
].
specialKeyStringOrSymbol = 'HKEY_CURRENT_USER' ifTrue:[
- ^ HKEY_CURRENT_USER.
+ ^ HKEY_CURRENT_USER.
].
specialKeyStringOrSymbol = 'HKEY_LOCAL_MACHINE' ifTrue:[
- ^ HKEY_LOCAL_MACHINE.
+ ^ HKEY_LOCAL_MACHINE.
].
specialKeyStringOrSymbol = 'HKEY_USERS' ifTrue:[
- ^ HKEY_USERS.
+ ^ HKEY_USERS.
].
specialKeyStringOrSymbol = 'HKEY_PERFORMANCE_DATA' ifTrue:[
- ^ HKEY_PERFORMANCE_DATA.
+ ^ HKEY_PERFORMANCE_DATA.
].
specialKeyStringOrSymbol = 'HKEY_CURRENT_CONFIG' ifTrue:[
- ^ HKEY_CURRENT_CONFIG.
+ ^ HKEY_CURRENT_CONFIG.
].
specialKeyStringOrSymbol = 'HKEY_DYN_DATA' ifTrue:[
- ^ HKEY_DYN_DATA.
+ ^ HKEY_DYN_DATA.
].
^ nil
"Created: / 19.5.1999 / 21:40:30 / cg"
- "Modified: / 19.5.1999 / 22:17:39 / cg"
+ "Modified: / 24.12.1999 / 00:02:06 / cg"
! !
!Win32OperatingSystem::RegistryEntry class methodsFor:'instance creation'!
@@ -7010,14 +7012,16 @@
|idx first rest root|
+ HKEY_CLASSES_ROOT isNil ifTrue:[self initialize].
+
idx :=
idx := aKeyNamePath indexOf:(self separator).
idx == 0 ifTrue:[
- first := aKeyNamePath.
- rest := nil.
+ first := aKeyNamePath.
+ rest := nil.
] ifFalse:[
- first := aKeyNamePath copyTo:idx-1.
- rest := aKeyNamePath copyFrom:idx+1
+ first := aKeyNamePath copyTo:idx-1.
+ rest := aKeyNamePath copyFrom:idx+1
].
first := first asUppercase.
@@ -7025,11 +7029,11 @@
"/ the first is a pseudo name
root := self rootKey:first.
root isNil ifTrue:[
- ^ nil
+ ^ nil
].
rest size == 0 ifTrue:[
- ^ root
+ ^ root
].
^ root subKeyNamed:rest.
@@ -7040,6 +7044,8 @@
self key:'HKEY_LOCAL_MACHINE\Software\Borland\'
self key:'HKEY_LOCAL_MACHINE\Software\eXept\Smalltalk/X\3.2.5\Directory'
"
+
+ "Modified: / 24.12.1999 / 00:01:52 / cg"
!
rootKey:aRootKeyStringOrSymbol
@@ -8066,6 +8072,6 @@
!Win32OperatingSystem class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/Win32OperatingSystem.st,v 1.87 1999-12-23 22:56:00 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/Win32OperatingSystem.st,v 1.88 1999-12-23 22:59:25 cg Exp $'
! !
Win32OperatingSystem initialize!