AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

INI in EXE einbinden

Ein Thema von N47R0N · begonnen am 19. Jun 2005 · letzter Beitrag vom 24. Jun 2005
Antwort Antwort
Seite 1 von 2  1 2      
N47R0N

Registriert seit: 26. Mai 2005
117 Beiträge
 
#1

INI in EXE einbinden

  Alt 19. Jun 2005, 21:10
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
  Mit Zitat antworten Zitat
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#2

Re: INI in EXE einbinden

  Alt 19. Jun 2005, 21:36
wie Wäre es mit

Delphi-Quellcode:
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');
oder nich?

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....
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
N47R0N

Registriert seit: 26. Mai 2005
117 Beiträge
 
#3

Re: INI in EXE einbinden

  Alt 19. Jun 2005, 21:41
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.
  Mit Zitat antworten Zitat
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#4

Re: INI in EXE einbinden

  Alt 19. Jun 2005, 21:45
ja so:

(im OnCreate oder so aufrufen...)

Delphi-Quellcode:
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;
wobei das was halt innerhalb der Trunc() steht geändert werden müsste

das Ändern:
Hier im Forum suchenTFileStream
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
Benutzerbild von malo
malo

Registriert seit: 19. Sep 2004
2.115 Beiträge
 
#5

Re: INI in EXE einbinden

  Alt 19. Jun 2005, 21:45
Zitat von N47R0N:
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.
Ich verstehe dein Problem grad nicht

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
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#6

Re: INI in EXE einbinden

  Alt 19. Jun 2005, 21:46
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 ?
Gruß
Hansa
  Mit Zitat antworten Zitat
N47R0N

Registriert seit: 26. Mai 2005
117 Beiträge
 
#7

Re: INI in EXE einbinden

  Alt 19. Jun 2005, 21:58
damit wollte ich einstellungen an der fertigen exe vornehmen ohne stark in den eigendlichen source ein zu greifen
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#8

Re: INI in EXE einbinden

  Alt 19. Jun 2005, 22:04
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.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#9

Re: INI in EXE einbinden

  Alt 19. Jun 2005, 22:12
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...
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
Benutzerbild von malo
malo

Registriert seit: 19. Sep 2004
2.115 Beiträge
 
#10

Re: INI in EXE einbinden

  Alt 19. Jun 2005, 22:15
Zitat von glkgereon:
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...
Naja, theoretisch könnte man das ganze auch disassemblieren und dann via Assembler die richtige Stelle auslesen und beschreiben. Ob sich der ganze Aufwand jedoch lohnt, ist fraglich
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz