All pastes #469160 Raw Edit

Untitled

public text v1 · immutable
·published 2007-05-03 16:13 UTC
rendered paste body
#include <windows.h>
#include <winreg.h>
#include <stdio.h>
#include <myheader.h>

extern int enumvalues(HKEY subkey);

unsigned long int subkeys=0;
unsigned long int values=0;
unsigned long int buffersize=200;
unsigned long int zaehler=0;
unsigned long int index=0;

char string [30] [200];
char path [30] [200];

int enumsubkeys(HKEY key);

int main ()

{


HKEY hkey;
HKEY newkey[5];

HKEY rootkey[4];

int parameter;
int i=0;
int k=0;
int nummer=0;


rootkey[0]=HKEY_USERS;
rootkey[1]=HKEY_CURRENT_USER;
rootkey[2]=HKEY_LOCAL_MACHINE;
rootkey[3]=HKEY_USERS;
rootkey[4]=HKEY_PERFORMANCE_DATA;


printf("Bitte wählen sie einen root-key aus\n");
scanf("%i", &parameter);

hkey=rootkey[parameter];

do 

{

RegQueryInfoKey(hkey,NULL,NULL,NULL,&subkeys, NULL,
		                NULL,&values,NULL,NULL,NULL,NULL);

if(subkeys!=0)
{
enumsubkeys(hkey); 
}
else
{

  if (values!=0)
  
    {
     enumvalues(hkey);  
     
    }

}


scanf("%i", &nummer);


RegOpenKeyEx(hkey,string[nummer],0,KEY_ALL_ACCESS,&newkey[k]);

memset(string,0,sizeof(string));


hkey=newkey[k];

k=k+1;

} while(1);






	return 0;
}



int enumsubkeys(HKEY key)

{

for (zaehler=0,index=0;zaehler<=(subkeys);index++,zaehler++)

{
RegEnumKey(key,index,string[zaehler],buffersize);
printf("%s\n",string[zaehler]);
Sleep(90);
}

return 0;
}