I run a SYSTEM service but cannot read HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run.
but run with current user can do.
HKEY hKey;
DWORD dwType=0;
TCHAR szValueName[MAXBYTE]={0};
TCHAR szValueKey[MAXBYTE]={0};
DWORD dwBufferSize=MAXBYTE;
DWORD dwKeySize=MAXBYTE;
if(RegOpenKey(HKEY_CURRENT_USER,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",&hKey)!=ERROR_SUCCESS)
{
return;
}
int i=0;
while(TRUE)
{
if(RegEnumValue(hKey,i,szValueName,&dwBufferSize,NULL,&dwType,(LPBYTE)szValueKey,&dwKeySize)==ERROR_NO_MORE_ITEMS)
{
break;
}
printf("%s\n",szValueName);
i++;
dwBufferSize = MAXBYTE;
dwKeySize = MAXBYTE;
ZeroMemory(szValueName,MAXBYTE);
ZeroMemory(szValueKey,MAXBYTE);
}