![]() |
INI in EXE einbinden
Hi @ all
Ich weiß das meine Überschrift nicht gerade gut ist , denn ich meine nicht wie man eine EXE dazu bringt daten aus einer INI zu verwenden sondern : Ich will wissen ob es möglich ist an eine EXE datei eine INI anhängen kann die beim Ausführen der EXE erst in ein bestimmten Ordner installiert wird . So soll das ganse funktionieren : Mein Hauptprogramm heist z.B Start.exe und ist in einem Ordner ( egal welchem ) . Die Start.exe ist darauf angewiesen bestimmte Daten aus einer INI datei zu lesen . Im Selben Ordner soll sich eine art Editor befinden . Den Öffnet man und kann gans leicht seine Angaben machen die in die INI geschrieben werden . Wenn man nun im Editor auf Fertig stellen drückt soll die INI datei in die Start.exe eingefügt werden . Wenn die Start.exe nun ausgeführt wird , soll dann wie gesagt die INI in einen bestimten Ordner entpackt werden . Leider habe ich keinen schimmer von solchen vorgängen und hoffe Unterstützung . Danke |
Re: INI in EXE einbinden
wie Wäre es mit
Delphi-Quellcode:
oder nich?
ST:=TStringList.Create;
ST.Add('[Dings]'); ST.Add('Achso = 1'); ST.Add('[Brummli]'); ST.Add('DingensDa = 2'); ST.Add('UnUeberhauptUndSo = Sodele'); ST.Add('Letztes = Allerletzes'); ST.SaveToFile('Folder/File.ini'); Edit(Vergessen): Das ganze in Verbindung mit nem TFileStream der die entsprechenden Stellen ersetzt... dass müsste man halt mit höchstgrenzen für die StringLänge machen, sodass der Rest mit Leerzeichen gefüllt wird, die im Add-Aufruf mit nem Statischen Trim() wieder gekillt werden könnten.... |
Re: INI in EXE einbinden
Ich weiß wie man eine INI erstellt nur will ich wissen wie man sie an eine EXE Binde und dafür sorgt das wenn die EXE ausgeführt wird dir INI mit ihren gansen inhalt der schon bearbeitet wurde in einen Ordner entpackt und von der EXE benutzt werden kan.
|
Re: INI in EXE einbinden
ja so:
(im OnCreate oder so aufrufen...)
Delphi-Quellcode:
wobei das was halt innerhalb der Trunc() steht geändert werden müsste
procedure CreateIni;
var SL: TStringList; begin SL:=TStringList.Create; SL.Add(Trunc('[Dings] ')); SL.Add(Trunc('Achso = 1 ')); SL.Add(Trunc('[Brummli] ')); SL.Add(Trunc('DingensDa = 2 ')); SL.Add(Trunc('UnUeberhauptUndSo = Sodele')); SL.Add(Trunc('Letztes = Allerletzes ')); SL.SaveToFile('Folder/File.ini'); SL.Free; end; das Ändern: ![]() |
Re: INI in EXE einbinden
Zitat:
glkgereon hat doch so einen Weg gezeigt. Das ganze dann ins Oncreate des Forms (bzw. wahlweise auch in die Projektdatei) schreiben und die Exe starten ;) |
Re: INI in EXE einbinden
Was soll denn das ? Entweder wird was fest eincompiliert in die EXE, oder es kommt sonstwo hin, z.B. INI. Es geht nur darum EBEN NICHTS an der Exe zu ändern !! Genau das willst du aber machen. Wenn jetzt jemand eine Fehlermeldung angibt, dann kannst du es eventuell nicht mal mehr genau lokalisieren, sofern an der EXE rumgefummelt wurde. Also : Wozu soll das gut sein ?
|
Re: INI in EXE einbinden
damit wollte ich einstellungen an der fertigen exe vornehmen ohne stark in den eigendlichen source ein zu greifen
|
Re: INI in EXE einbinden
So macht man das aber nicht ! Dafür sind doch INIs usw. da. Es ist viel einfacher eine Ini zu verändern, die von einer EXE ausgelesen wird, als die EXE zu verbiegen. 8) Natürlich muß der Source in der Lage sein, die INI richtig zu verarbeiten. Notfalls EXE+INI neu ausliefern. Zumindest nicht ein Programm, das eine vorhandene EXE vergewaltigt.
|
Re: INI in EXE einbinden
wieso Hansa?
man müsste Halt nur versuchen für den IniTeil den String vorerst eindeutig zu machen...zum finden. Genau hier sehe auch ich dass Problem: dass man eben NIE mit 100%iger Sicherheit sagen kann: Dieser String kommt hier, und NUR hier vor in der exe...man kann also nie ganz ausschließen dass man ausversehen ein stückchen "code" verhackstückt. Ist der String richtig gewählt sollte dieses Problem imho jedoch praktisch ausgeschlossen sein... |
Re: INI in EXE einbinden
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:59 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz