C++ In eigene exe schreiben

T

Tigerass 2.0

Gast
Hey Jungs,

Ich habe eine kleine Frage. Ich möchte ein Programm schreiben, welches komplett ohne .ini dateien etc. auskommt, aber bei dem man trotzdem Einstellungen speichern kann. Gibt es eine Möglichkeit die Einstellungen während der Runtime in die exe fest zu Speichern? Geht das mit Ressourcen? Habe sowas noch nie gemacht und inet gibt auch nicht mehr her.

Danke,
Tigerass
 
hm sowas hab ich auch mal überlegt aber nicht ausprobiert..
du könntest einen string erstellen mit zb 1kb in deiner exe und dann in der exe nach dem anfang und ende parsen.. zb nach <begin_string> und <end_string>
dazwsichen könntest dann die exe manipulieren?
--> nicht vergessen die datei binär und nicht als text einzulesen ;)
 
Ich bin mir relativ sicher, dass einem das Dateisystem da einen fetten Strich durch die Rechnung macht, wenn das laufende Programm versucht sich selber zu modifizieren...
 
Ich weiß zwar nicht wieso das vorteilhaft sein sollte, aber eine weitere Möglichkeit könnten Alternate Data Streams bei NTFS bieten. Funktioniert natürlich nicht auf jedem Dateisystem.
 
Das habe ich mir eben auch gedacht, wobei es doch verschiedene Sections gibt mit verschiedenen Rechten.
ADS ist zu kompliziert und nicht notwendig.
 
Zum Lesen geöffnete Dateien sind problemlos manipulierbar, zum Schreiben geöffnete kann man nicht manipulieren.
 
Das muss mir Resourcen gehen, habe gerade mir Ressource Hacker ein wenig Rumgespielt, der schafft das auch während er läuft bei sich selbst :) Eine EXE wird ja wenn sie gestartet wird nur im Lesen-Modus geöffnet und dann gibts wie gesagt die verschiedenen Rechte.
Du hast lesen und schreiben verwechselt Yuuri :D

LG Tigerass
 
Etwas lästig könnte es dann noch sein das Programm zu aktualisieren. Bei Updates müsste die neue .exe die Einstellungen aus der alten herauskopieren, damit man sie nicht verliert.
Beim Testen während der Entwicklung kann das auch Nerven, da bei jedem Kompilieren die Einstellungen weg sind.
 
naja wegen dem update...
man müsste halt zur not eine import und export funktion machen.. aber vor dem update halt nicht vergessen die einstellung zu exportieren
 
schreib deine einstellungen lieber in die registry, wenn du sie nicht in der ini haben willst.
insofern UAC aktiviert ist, wirst eh nicht ohne weiteres schreibzugriff auf das verzeichnis "Programe Files" bekommen.
 
Tigerass 2.0 schrieb:
Du hast lesen und schreiben verwechselt Yuuri :D
Nein hab ich nicht. Du kannst aus Anwendungen Dateien nicht manipulieren, die in anderen Anwendungen zum Schreiben geöffnet sind. Sich selbst zu öffnen und zu Schreiben geht also nur, wenn Windows die Datei nicht zum Schreiben öffnet. Hab es noch nicht probiert, imho sollte es aber gehen.
 
Zurück
Oben