Die Registry - howto ??
-
nee wird kein virus, ach ja die \\ am ende hatte ich schon weg gemacht, aber tat trozdem net
hier
#include <stdio.h> #include <iostream.h> #include <windows.h> #include <string.h> int main() { char RegPath[MAX_PATH] = "Software\\Microsoft\\Windows\\CurrentVersion\\Run"; HKEY hKey; RegOpenKey(HKEY_LOCAL_MACHINE,RegPath,&hKey); DWORD dwNumber=150; RegSetValueEx(hKey,"EintragsName",0,REG_DWORD,(BYTE*)&dwNumber,sizeof(DWORD)); return 0; }
-
compile mal und sag den fehler, ich bin zu faul...
-
Das ist ja das Problem, es wird kein Fehler angezeigt,
das Programm macht aber trotzdem nicht was es soll.....es startet und es passiert nix, also es macht mit sicherheit was, denn es läuft ja bis zum ende (Press any key to continue), das war es dann aber auch !!!
???
???
-
hol dir mal mit GetLastError den Fehlercode
-
loki1985 schrieb:
erstens lieber main(void),
Quatsch, das ist egal
-
ok habe es jetzt so gemacht
#include <stdio.h> #include <iostream.h> #include <windows.h> #include <string.h> int main() { char RegPath[MAX_PATH] = "Software\\Microsoft\\Windows\\CurrentVersion\\Run"; HKEY hKey; RegOpenKey(HKEY_LOCAL_MACHINE,RegPath,&hKey); DWORD dwNumber=150; RegSetValueEx(hKey,"EintragsName",0,REG_DWORD,(BYTE*)&dwNumber,sizeof(DWORD)); cout << GetLastError(); return 0; }Dann gibt er mir ne 0 aus
-
aber funktioniert immer noch nicht....
wieso ??
was heisst die 0 ??
-
Ich habe es mal folgendermaßen gemacht....
#include <stdio.h> #include <iostream.h> #include <windows.h> #include <string.h> int main() { char RegPath[MAX_PATH] = "Software\\Microsoft\\Windows\\CurrentVersion\\Run"; HKEY hKey; RegOpenKey(HKEY_LOCAL_MACHINE,RegPath,&hKey); DWORD dwNumber=150; RegSetValueEx(hKey,"EintragsName",0,REG_DWORD,(BYTE*)&dwNumber,sizeof(DWORD)); BYTE cString[]="C:\games\icytower1.2\icytower.exe"; :confused: RegSetValueEx(hKey,"IcyTower",0,REG_SZ,cString,strlen(cString)+1); cout << GetLastError(); return 0; }An der Stelle mit dem
kommt folgender FehlerKompilierung läuft... registry.cpp C:\Eigene Dateien\Test Sourcecodes\registry.cpp(18) : error C2664: 'strlen' : Konvertierung des Parameters 1 von 'unsigned char [34]' in 'const char *' nicht moeglich Die Typen, auf die verwiesen wird, sind nicht verwandt; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat Fehler beim Ausführen von cl.exe. registry.exe - 1 Fehler, 0 Warnung(en)Wie genau muss diese Zeile dann aussehen ??
-
Dieser Thread wurde von Moderator/in Shade Of Mine aus dem Forum ANSI C in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
hallo,
so _kann_ eine mögliche Lösung aussehen:
char* cString = "C:\\games\\icytower1.2\\icytower.exe";
RegSetValueEx(hKey,"IcyTower",0,REG_SZ,(BYTE*)cString,strlen(cString)+1);mfg
rb
-
aua... bitte:
char cString[] = "C:\\games\\icytower1.2\\icytower.exe";Du scheinst ein ziemlicher Icytower-freak zu sein wenn du schon beim starten des pcs icytowere spielen willst ^^ :p
-
du musst auf const char * casten in strlen
-
hi,
bei mir gehts so wie´s "kein-Benutzer"
geschrieben hat
-> compiler Borland c++
mfg dr.melon