![]() |
Resourcendatei zur Laufzeit erzeugen und an eine bestehende
Ich, ich möchte mit klick auf einen Button, eine beliebige Datei als Resourcendatei an eine bestehende EXE Datei hängen, sodass wenn diese EXE Datei ausgeführt wird die Resourcendatei wo abgespeichert werden kann. Ich weiß wie ich Resourcen abspeicher, bloß nicht wie ich eine Datei zur Laufzeit als Resourcendatei an eine andere hänge. Pls Help ;)
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Das Hauptproblem sehe ich schon einmal darin, dass Du einen Ressourcen-Compiler bräuchtest.
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Delphi-Quellcode:
Angeblich soll das funktionieren, aber ich bekomme ständig ne fehlermeldung die typen seien falsch ...
h := BeginUpdateResource(exedatei,TRUE);
UpdateResource(h,RT_RCDATA, 'text', 'RCDATA','C:\textfile.txt',340); EndUpdateResource(h,FALSE); |
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
*möp* wo bleiben die Leute mit den Antworten? *g*
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Lies doch mal die Hilfe. :warn:
Zitat:
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
:wall: bitte bitte kläre mich auf^^ ich habs bitter nötig ;)
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Delphi-Quellcode:
Du müsstest die einzufügenden Ressourcen ja erst einmal in den Speicher laden (einen Dateinamen anzugeben macht ja wenig Sinn). Außerdem steht der 4. Parameter für die Sprache, da passt 'RCDATA' nicht ;). Das Folgende hab ich nicht getestet, hoffe aber, dass es so geht.
UpdateResource(h,RT_RCDATA, 'text', 'RCDATA','C:\textfile.txt',340);
Delphi-Quellcode:
var sl: TStringList;
h: THandle; begin sl := TStringList.Create; try sl.LoadFromFile('C:\textfile.txt'); h := BeginUpdateResource(PChar(Dateiname),false); try UpdateResource(h,RT_RCDATA,'text',LANG_NEUTRAL,@sl.Text[1],Length(sl.Text)); finally EndUpdateResource(h,false); end; finally FreeAndNil(sl); end; end; |
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
^^ Irgendwie nicht^^ bei dem Code:
Delphi-Quellcode:
wird eine RCX16.tmp erzeugt ...^^
procedure TForm1.Button1Click(Sender: TObject);
var sl: TStringList; h: THandle; begin sl := TStringList.Create; try sl.LoadFromFile('C:\main.exe'); h := BeginUpdateResource(PChar(Application.ExeName),false); try UpdateResource(h,RT_RCDATA,'text',LANG_NEUTRAL,@sl.Text[1],Length(sl.Text)); finally EndUpdateResource(h,false); end; finally FreeAndNil(sl); end; end; |
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Du willst main.exe in eine Stringliste laden?
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Upsi ^^ :duck:
^^ ich will ne exe reinladen hehe Ich galube bei na exe muss ich das doch irgendiw mit denm Stream machen doer so...^^ |
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Mal ganz abgesehen davon:
Zitat:
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
ne moment ich will keine exe ändern ich will was dran hängen^^ alsook das ist ändern aber halt nicht im sinne von ändern ;) (blickste noch durch?)
Ich will mit einem Programm "Exe1" die Datei "Exe2" an die Datei "Exe3" anhängen. Sry das ich mich so schlecht ausdrücke :( |
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Hmmm... ja, da wirst Du wohl um Streams nicht herumkommen. Leider habe ich im Moment keine Idee, wie man die Speicheradresse eines Streams angibt (@Stream?, keine Ahnung), der Rest wäre ja zu schaffen. Probier halt mal ein bisschen rum, ich gehe nun gleich off (Sicherungskopien aber nicht vergessen ;)).
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
^^ hehe Danke dir soweit schonmal also mit den Stream des verschiebe ich dann mal ;)
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Schaut mal in die Hilfe zu
![]() ![]() |
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Wenn du eine Exe an eine Exe und die dann noch an eine Exe machst, wass soll 'n das werden?
Hätte ich so ein Teil auf meiner Festplatte würde ich sie nicht nur mit einem Auge be- obachten sondern mit zwei. Die Vierenverdächtigkeit läge dann bei 99.895 %. :mrgreen: |
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
ne ich will kein virus machen. ich will eine exe an ne andere hängen. das soll ne updater sein. aber die exe wird halt (also der updater) wird immer erneuert. deshalb muss ich nach jedem update die neu dra hängen
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Was spricht da gegen ein SFX-Modul?
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
das is doch von winRAR oder? selbstentpackendes archiev. spricht nix dagegen bloß ich will ja den geupdateten updater wieder an die exe hängen, dann müsste ich das ja irgendwie mit winrar wiedermachen und wie bringe ich meinem programm das bei?
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Das SFX-Modul entpackt Deine Dateien und startet anschließend den Updater. Ich sehe da nun nicht das ganz große Problem.
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
OK also muss ich die erst packen. so das habe ich jetzt gemacht. Updater wird gestartet aber wie bekomme ich es wieder in eine exe als en packet?
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Sry, ich verstehe nicht ganz, was Du willst.
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Kurz und Knapp:
Ich möchte ein Programm, was: Eine Exe Datei (Updater) an ein bestehendes Programm anfügt (Media Player) Wird der Media Player gestartet wird der Updater von dem Media Player "gelöst" und gestartet. Dieser sucht nach Updates. Findet er welche, so Downloadet er diese, mit einem Programm, was den neuen Media Player mit dem Updater verschmiltzt. |
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Ist der Mediaplayer von Dir?
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Jop,
okok klar ich könnte den Updater auch direkt in den Player einbauen, möchte ich aber nicht! Ich will es genau so wie oben beschrieben mahen. Nicht anders. :) |
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Hmm... find ich aber ein bisschen von hinten durch die Brust ins Auge.
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
;) bin halt so. Ich habe mir da vorgenommen und möchte es auch so umsetzen. gibt es dar keine fertige funktion?
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Das ist etwas zu speziell für eine fertige Funktion, findest Du nicht? ;)
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
mh joa ... also kann ichs dann vergessen :(? oder geht das echt nich?
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Was soll nicht gehen? Dass ein Programm einen Teil von sich selbst abspaltet und als Datei speichert?
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Zitat:
|
Re: Resourcendatei zur Laufzeit erzeugen und an eine bestehe
Wenn Du genau weißt, ab welchem Byte innerhalb Deiner Exe sich die angehängte Exe befindet, ginge das schon.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:28 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