RegQueryValueEx Access Violation manchmal bei WinXP, manchmal nicht. Why?



  • Hallo,

    Ich will Registry Value/Einträge query'en und es funktioniert. Manchmal aber krieg ich Access Violations (vorallem wenn es in einer vmware läuft). Deshalb würde ich's gerne reviewen lassen. Woran mag das liegen? Vielen Dank.

    char *proxySettings(){
    	char *buf = malloc(1024);
    	unsigned int cbData = 1024-1;
    	DWORD dwType = REG_SZ;
    	HKEY MyKey;
    
    	if(buf == NULL) return NULL;
    
    	memset(buf, 0, 1024);
    
    	if(RegOpenKey(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", &MyKey)!=ERROR_SUCCESS)
    		return NULL;
    
            //HIER geschieht das Unglück -> AV!
    	if(RegQueryValueEx(MyKey, "ProxyServer", 0, &dwType, (LPBYTE)buf, (LPDWORD)&cbData)!=ERROR_SUCCESS)
    		return NULL;
    
    	RegCloseKey(MyKey);
    
            return buf;
    }
    

    Danke

    Grüsse WinApiProgger


Anmelden zum Antworten