Hi,
this is my code:
Code:
 
  LONG ret;
  HKEY keyHandle;
  String msg;

  ret=RegOpenKeyEx(HKEY_LOCAL_MACHINE,  "Software\\myKey",
         0, KEY_ALL_ACCESS, &keyHandle);

  if (ret != ERROR_SUCCESS)
  {
    msg = "Open key failed.";
     ret = Application->MessageBoxA(msg.c_str(),"Error",MB_OK);
    if (ret == ID_OK)
    {};
    exit(0);
  }

  CHAR  value[80];
  value[0] = '\0';
  DWORD valueSize;
  char valueName[64];
  DWORD valueNameSize;
  DWORD n=0;

  for (n=0; n<2;n++) {
      valueSize=64;
      valueNameSize = 64;
      ret=RegEnumValue(keyHandle, n, valueName, &valueNameSize,NULL, NULL, value, &valueSize);
      if (ret == ERROR_NO_MORE_ITEMS) break;
      msg = (String)valueName + "=" +(String)value;
      Application->MessageBoxA(msg.c_str(),"Read Value",MB_OK);
  }
  ret=RegCloseKey(keyHandle);
I have admi rights and i created myKey manually in my account. The code worked. I could get
values from myKey.
However, RegOpenKeyEx fails when someone who login without admi rights. What can I do
to let myKey can be accessed by all the users no matter what privilege they have?
Thanks for help