Editor als Standard für Dateityp verwenden und beim anklicken diesen öffnen
-
Hallöle
bin jetzt grad dran das mit der hilfe der FAQ zu proggen, mir stellt sich nun aber eine Frage.
Ich hab Win XP da stimmt die Aussage der Registrypfade hab aber jetzt keine möglichkeit die Registry Pfade auf Win 98 Win Me und ähnlichen BS zu überprüfen. sind die Standardmäßig gleich wie bei XP oder muß ich auch auf das BS abfragen und wenn ja WIE erfahr ich welches BS es ist.
MfG Felix
-
So verzweifel grad an der TRegistry Class
kann mir mal jemand ein beispiel schreiben wie ich mir im Ordner
HKEY_CLASS_ROOT
in der Unterdatei
.awl
einen neuen Schlüssel erzeugen kann.
hab mir das mal irgendwie überlegt aber da kommt nur Müll raus
myReg->RootKey = "HKEY_CLASS_ROOT"; if(myReg->KeyExists("awl") == true) dummy=5; myReg->OpenKey(".awl",false); myReg->CreateKey("Dummy");Vielen Dank mal
Felix
-
Ich dachte immer das heißt HKEY_CLASSES_ROOT
-
Hallo
hab mir das mal irgendwie überlegt aber da kommt nur Müll raus
Und was verstehst du untzer Müll?
Zum einem legst du den Root-Key falsch fest :
myReg->RootKey = HKEY_CLASSES_ROOT; // Keinen String, sondern den WinAPI-Wert verwendenZum anderen prüfst du auf den Schlüssel "awl", willst dann aber den Schlüssel ".awl" erstellen.
bis bald
akari
-
Also mit Müll meine ich das er sagt das der Schlüssel Dummy nicht erzeugt werden kann.
Ausserdem will ich den Schlüssel AWL öffnen und dann dort den Unterschlüssel "Dummy" erzeugen.
Vielleicht kann mir jemand kurz 2 3 Zeilen Beispielcode schreiben ich glaub einfach ich stehe da auf dem Schlauch.
Wenn ich die " bei HKEY_CLASS_ROOT weglasse kommt übrigens der Fehler
[C++ Fehler] Haupt.cpp(355): E2451 Undefiniertes Symbol 'HKEY_CLASS_ROOT'
Wie muß ich dann vorgehen?
Merci mal Felix
-
Hallo
bereits Braunstein hat doh schon gesagt, das es HKEY_CLASSES_ROOT heißt.
bis bald
akari
-
Hallöle,
das schreiben klapp jetzt einigermaßen aber immernoch nicht zufriedenstellende.
myReg->RootKey = HKEY_CLASSES_ROOT; myReg->OpenKey(".awl",true); myReg->WriteString("(Standard)","MyFileExt"); myReg->CreateKey("MyFileExt"); myReg->OpenKey("MyFileExt",true); myReg->CreateKey("DefaultIcon"); myReg->CreateKey("shell"); myReg->OpenKey("DefaultIcon",true); myReg->WriteString("(Standard)",strcat (StartVerzeichnis,"\\sps.ico")); myReg->CloseKey(); myReg->OpenKey("shell",true); myReg->WriteString("(Standard)",strcat (StartVerzeichnis,"\\sps.exe %1"));Das schreiben der Schlüssel klappt bis zum wert Default Icon hier wird der korrekte Wert eingetragen in shell dann nicht mehr
Ausserdem liegt ja in jedem Schlüssel bereits ein Wert "(Standard)", dieser wird ber nicht überschrieben sondern ein neuer mit gleichem Namen erzeugt.
Woran kann das denn liegen?
MfG Felix
-
beim anlegen eines neuen schlüssels erst den alten löschen?
Mach´ma´punkt und kommaherzlichst...
KLF
-
Also das erzeugen der Registry einträge klappt jetzt nur wird nicht die Exe geöffnet wenn ich auf eine Datei klicke. hab hier mal screenshots meiner Registry
Der Baum:http://people.freenet.de/felix-wetter/Bilder/pfad.jpg
Registry .awl: http://people.freenet.de/felix-wetter/Bilder/awl.jpg
Registry MyFileExt: http://people.freenet.de/felix-wetter/Bilder/MyFileExt.jpg
Registry DefaultIcon: http://people.freenet.de/felix-wetter/Bilder/defaulticon.jpg
und Registry Eintrag in dem Schlüssel Shell: http://people.freenet.de/felix-wetter/Bilder/shell.jpgsieht da jemand einen Fehler oder muß ich noch mehr einträge machen?
Warum wird eigentlich nicht der Standardschlüssel überschrieben sondern ein 2. erzeugt?
Hoffe jetzt ist das Problem klar.
MfG Felix
-
Hilfe es wäre wirklich dringend wenn sich das mal jemand anschauen würde was ich noch eintragen muß das mein Editor als Standrd gewählt wird!!!!!!
-
Dein Problem:
http://www.bytesandmore.de/rad/index.htm?http://www.bytesandmore.de/rad/cpp/snipp/sc03037.php