MinGw 32 v4.8.1 et fonction msdn RegOpenCurrentUser
Bonjour,
Je viens de télécharger la dernière version du compilateur MinGW 32 bits ici et je développe un petit programme qui utilise les fonctions Windows dont voici un bout de code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| char * registry_current_user_key_search(char *subkey, char *value, int version_windows)
{
HKEY current_key;
char buffer[256];
char *data = NULL;
DWORD size = sizeof(buffer),
result;
buffer[0] = '\0';
result = RegOpenCurrentUser(KEY_READ, ¤t_key);
if(result != ERROR_SUCCESS)
{
printf("RegOpenCurrentUser error : %ld\n", GetLastError());
return data;
}
result = RegGetValue(current_key, subkey, value, RRF_RT_ANY, NULL, &buffer, &size);
if(result != ERROR_SUCCESS)
{
printf("RegGetValue error : %ld\n", result);
goto my_errors;
}
data = strdup(buffer);
RegCloseKey(current_key);
printf("Valeur de data : %s\n", data);
return data;
my_errors:
RegCloseKey(current_key);
return data;
} |
Et j'ai cette erreur de compilation :
Code:
1 2 3 4 5 6 7 8
|
||=== Build: MinGW 32 in GestionBaseRegistre (compiler: MinGw 32) ===|
M:\Test c\GestionBaseRegistre\main.c||In function 'registry_current_user_key_search':|
M:\Test c\GestionBaseRegistre\main.c|383|warning: implicit declaration of function 'RegOpenCurrentUser' [-Wimplicit-function-declaration]|
M:\Test c\GestionBaseRegistre\main.c|390|warning: implicit declaration of function 'RegGetValue' [-Wimplicit-function-declaration]|
M:\Test c\GestionBaseRegistre\main.c|390|error: 'RRF_RT_ANY' undeclared (first use in this function)|
M:\Test c\GestionBaseRegistre\main.c|390|note: each undeclared identifier is reported only once for each function it appears in|
||=== Build failed: 1 error(s), 2 warning(s) (0 minute(s), 6 second(s)) ===| |
Cette erreur semble logique puisque la fonction RegOpenCurrentUser n'est pas dans le fichier winreg.h de MinGW 32 bits...
Du coup j'aimerai savoir si vous vous êtes confrontés à ce même type de problème et quelle est le compilateur que vous utilisez ?
Merci par avance.
PS: j'utilise RegOpenCurrentUser car j'ai un programme qui est lancé via un service.