Browse Source

* Fixed HKEY_xxx defines for win64. For example HKEY_CLASSES_ROOT should be $FFFFFFFF80000000 on win64 instead of $80000000. Most registry API functions accept invalid HKEY_xxx values. But some registry functions like RegOverridePredefKey() require proper values. I had spent several hours fighting with RegOverridePredefKey() on win64 until I have found what had been wrong.

git-svn-id: trunk@23205 -
yury 12 years ago
parent
commit
2012220aec
1 changed files with 7 additions and 7 deletions
  1. 7 7
      rtl/win/wininc/defines.inc

+ 7 - 7
rtl/win/wininc/defines.inc

@@ -2337,13 +2337,13 @@
      RDW_ALLCHILDREN = 128;
      RDW_NOCHILDREN = 64;
   { RegCreateKey  }
-     HKEY_CLASSES_ROOT = HKEY($80000000);
-     HKEY_CURRENT_USER = HKEY($80000001);
-     HKEY_LOCAL_MACHINE = HKEY($80000002);
-     HKEY_USERS = HKEY($80000003);
-     HKEY_PERFORMANCE_DATA = HKEY($80000004);
-     HKEY_CURRENT_CONFIG = HKEY($80000005);	
-     HKEY_DYN_DATA = HKEY($80000006);
+     HKEY_CLASSES_ROOT = HKEY(longint($80000000));
+     HKEY_CURRENT_USER = HKEY(longint($80000001));
+     HKEY_LOCAL_MACHINE = HKEY(longint($80000002));
+     HKEY_USERS = HKEY(longint($80000003));
+     HKEY_PERFORMANCE_DATA = HKEY(longint($80000004));
+     HKEY_CURRENT_CONFIG = HKEY(longint($80000005));
+     HKEY_DYN_DATA = HKEY(longint($80000006));
 
 Type
     SE_OBJECT_TYPE = (   // enum in Delphi apparantly.