Code:
#include <windows.h>
#define MAX_KEY_LENGTH 255
#define MAX_VALUE_NAME 16383
int main()
{
HKEY hKey;
FILETIME lpftLastWriteTime;
DWORD dwIndex=0,dwRecursiveIndex=0,lpcName=MAX_VALUE_NAME;
TCHAR lpName[MAX_VALUE_NAME];
if(RegCreateKeyEx(HKEY_LOCAL_MACHINE,
"SOFTWARE",
0,
NULL,
REG_OPTION_NON_VOLATILE,
KEY_ALL_ACCESS,
NULL,
&hKey,
NULL) == ERROR_SUCCESS )
{
while(RegEnumKeyEx(hKey,dwIndex,lpName,&lpcName,0,0,0,&lpftLastWriteTime)!=ERROR_NO_MORE_ITEMS)
{
MessageBox(0,lpName,"Software",0);
while(RegEnumKeyEx(hKey,dwRecursiveIndex,lpName,&lpcName,0,0,0,&lpftLastWriteTime)!=ERROR_NO_MORE_ITEMS)
{
MessageBox(0,lpName,"SubSoftware",0);
}
dwIndex++;
lpcName=MAX_VALUE_NAME;
}
}
else
{
MessageBox(0,"can´t RegCreate..()","",0);
}
}