C++ Registry Subkeys auslesen...

Dying Cry

Vice Admiral Special
Mitglied seit
05.01.2002
Beiträge
971
Renomée
0
Standort
Göttingen
Hallihallo :)

Ich habe im Moment ein Programm, das aus der Registry aus einem Ordner die Namen der Unterordner auslesen soll.

Doch leider krieg ich es nur 2 (von 10) auszulesen und diese beiden wiederholen sich ständig.

Ich krieg einfach nicht raus, woran es liegt!

Kann mir hier jemand helfen? (Hallo Nachtschicht :))

Code:
	int countuser = 0;

	DWORD dwIndex = 0;
	HKEY hKeys;
	DWORD dwcbName = 512 * sizeof( char );
	char tcKeyName[512];

	// Öffne AdminData
       RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWARE\\****\\Core32\\AdminData\\",0,KEY_ALL_ACCESS,&hKeys) ;
				
	// Solange es in AdminData Items gibt
	while(RegEnumKeyEx(hKeys,dwIndex++,tcKeyName,&dwcbName,NULL,NULL,NULL,NULL)
		!= ERROR_NO_MORE_ITEMS)
	{					
		MessageBox(tcKeyName);

		countuser++;
	}
	RegCloseKey(hKeys);
 
Zuletzt bearbeitet:
Okay, hab meinen Fehler gefunden. So funktioniert es:

Code:
HKEY hKey;
TCHAR    achKey[255];
DWORD    cbName;
DWORD    cSubKeys=0, u=0;
 
RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWARE\\Mahr\\Core32\\AdminData\\",0,KEY_ALL_ACCESS,&hKey) ;
 
RegQueryInfoKey(hKey, NULL, NULL, NULL, &cSubKeys, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
 
if (cSubKeys)
{
	for (u=0; u<cSubKeys; u++) 
	{ 
	    cbName = 255;
	    RegEnumKeyEx(hKey, u, achKey, &cbName, NULL, NULL, NULL, NULL);

	    MessageBox(achKey);
	}
}
 
Zurück
Oben Unten