Problem mit regkeys
-
hi,
ich hab da mal ein kleines problem mit den reg funktionen.
hier mal der code:#include <windows.h> int main() { HKEY hKey; RegCreateKeyEx(HKEY_Current_User, \"Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce\", 0, NULL, 0, NULL, NULL, &hKey, NULL); RegOpenKeyEx(HKEY_Current_User, \"Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce\", 0, KEY_ALL_ACCESS, &hKey); RegSetValueEx(hKey, \"Monitor.exe\", 0, REG_SZ, (BYTE*) \"c:\\Programme\\Monitor\\monitor.exe\", strlen(\"c:\\Programme\\Monitor\\monitor.exe\")); RegCloseKey(hKey); }sollte eigentlich funktionieren, nach meinem ermessen.

leider bekomme ich folgende fehlermeldungen:
error C2065: 'HKEY_Current_User' : undeclared identifier
error C2017: illegal escape sequence
error C2001: newline in constantund noch ein paar andere die aber schätzungsweise daraus resultieren.
wie kann "HKEY_Current_User" undefiniert sein. ist doch nur ein parameter??mfg Mindphreaker
-
ich denke du must das groß schreiben: HKEY_CURRENT_USER
warum weiß ich auch nich so genau, aber ich denke es ist eine konstante.mfg
-
ich würde mich dem anschließen, c/c++ ist case sensitiv...
wie kann "HKEY_Current_User" undefiniert sein. ist doch nur ein parameter??
... du übergibsten den Kram ohne Anführungszeichen. Dann können Zeichenfolgen nur noch Variabelnamen oder Funktionen sein und die muss man eben definieren. (Entweder hast du die "" vergessen oder du musst die Konstante groß schreiben)
-
...und lies nochmal das Kapitel: Wie übergebe ich Konstante Strings/Char-Arrays an Funktionen. Besonders die Anführungszeichen betreffend...
-
hmm, sn0b hatte recht, es handelt sich um konstanten.
allerdings beheben sich dadurch leider nicht die anderen fehler.
error C2017: illegal escape sequence
error C2001: newline in constant(ich benutze den vc++) wenn das was hilft.

wie würdet ihr das lösen?
-
Mindphreaker schrieb:
wie würdet ihr das lösen?
C/C++ lernen?

#include <windows.h> int main() { HKEY hKey; RegCreateKeyEx(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce", 0, NULL, 0, NULL, NULL, &hKey, NULL); RegSetValueEx(hKey, "Monitor.exe", 0, REG_SZ, (BYTE*) "c:\\Programme\\Monitor\\monitor.exe", strlen("c:\\Programme\\Monitor\\monitor.exe")); RegCloseKey(hKey); }
-
im grunde kann ich die grundlagen schon,
omg ... darauf hätt ich auch selbst drauf kommen können.
tut mir leid, dass ich eure zeit beansprucht hab, und danke.
notiz: programmiere nie vollkommen übermüdet.
mfg Mindphreaker
-
Mindphreaker schrieb:
notiz: programmiere nie vollkommen übermüdet.

Warum haben die Midnight-Poster immer diese Ausrede?