003
14.12.2007, 14:24 Uhr
~Dirk3214
Gast
|
Schonmal Danke für die Tips!!
Das Prog sieht jetzt grad so aus:
Code: |
char* buffer; buffer = (char*)malloc(strlen(key) + 30); if(!buffer) printf("Fehler!");
strcpy_s(buffer, strlen(key) + 30, "SOFTWARE\\Classes\\CLSID\\"); strcat_s(buffer, strlen(key) + 30, key);
printf("--> %s", buffer);
RegOpenKeyEx( HKEY_LOCAL_MACHINE, (LPCWSTR)buffer, 0, KEY_READ, &hTestKey)
|
Das Zusammenfügen funktioniert auch, wenn ich mir buffer ausgeben lass ist der Inhalt korrekt. Aber irgendwie scheint das übergeben nicht im richtigen Typ zu sein.
Wenn ichs so aufruf:
Code: |
TEXT("SOFTWARE\\Classes\\CLSID\\{ED820E2C-869D-4450-8CDF-5CDEA074DB09}")
|
werden mir verschiedene Registryschlüssel angezeigt. Bei diesem Aufruf
aber blöderweise keine......
Woran kann das liegen? Hier die Beschreibung zu RegOpenKeyEx
[man] LONG WINAPI RegOpenKeyEx( __in HKEY hKey, __in_opt LPCTSTR lpSubKey, __reserved DWORD ulOptions, __in REGSAM samDesired, __out PHKEY phkResult ); [/man]
Ach ja, es muss kein reiner C-Code sei, C++ geht auch! |