JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=85d59f4c8a74e4a4e774df5a4f156c03Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Mehrere Dateien in eine exe packen?

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Chriss
Senior JLI'ler



Anmeldedatum: 18.08.2004
Beiträge: 267

Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 09:58    Titel: Mehrere Dateien in eine exe packen? Antworten mit Zitat

Hi, weiß jemand ob es eine Möglichkeit gibt mehre Dateien in eine exe zu packen und von der exe darauf zuzugreifen?
Gefunden habe ich bisher nur die Möglichkeit Ressourcen mit in eine Datei zu kompilieren. Da ich Jedoch ein kleines Programm schreiben will das etwas wie ein selbstextrahierendes Ziparchiv erzeugen soll muss ich die Daten irgendwie zusammenbasteln nachdem die exe erstellt worden ist.

Hat jemand sowas schonmal versucht? Google hat mir bisher nicht viel gebracht und ein einfach zusammenkopieren mit dem Dos-Befehl 'copy' führt zu einer Fehlermeldung, das es sich nicht um eine gültige Win32 Anwendung handelt.
Da es Programme gibt die sowas können muss es ja irgendwie machbar sein.

Grüße
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
PeaceKiller
JLI Master


Alter: 35
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 12:08    Titel: Antworten mit Zitat

Qt macht es z. B. so, das die ganze Datei einfach in ein Char-Array kommt.
_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Chriss
Senior JLI'ler



Anmeldedatum: 18.08.2004
Beiträge: 267

Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 12:28    Titel: Antworten mit Zitat

Klingt schonmal gut aber wie hänge ich die Datei(en) hinter meine exe so dass sie noch ausführbar bleibt?

Probiert habe ich es mit
Code:

copy MeinProgg.exe + daten.dat ProggMitDaten.exe


Die Datei 'ProggMitDaten.exe' ist anschließend nicht ausführbar. Ich wollte später mit einem eigenen Prog eine neue Datei anlegen, dann erst die exe dort hineinschreiben und anschließend die Datein hineinschreiben. Ich ging jetzt davon aus das der copy Befehl das auch so macht da man viedeos die keinen header benötigen sondern nur chunks haben so zusammengefasst werden können.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
PeaceKiller
JLI Master


Alter: 35
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 12:33    Titel: Antworten mit Zitat

Du kannst ja auch nicht einfach deine fertig kompilierte Datei ändern wie du willst.

Was willst du den überhaupt erreichen, wenn du eine Datei mit in dein Exe packen willst?
_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Chriss
Senior JLI'ler



Anmeldedatum: 18.08.2004
Beiträge: 267

Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 12:53    Titel: Antworten mit Zitat

Im Prinziep will ich ein Prog schreiben das ein selbstextrahierendes Ziparchiv erstellt. Nicht genauso aber nach dem selben Verfahren.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 13:23    Titel: Antworten mit Zitat

Naja, du kannst biem Compileiren natürlich Ressourcen einbindne, aber selber von einem Prog, in eine andere eine Ressource einbinden, keine Ahnung, dürfte leicht schwerer sein.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Chriss
Senior JLI'ler



Anmeldedatum: 18.08.2004
Beiträge: 267

Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 13:40    Titel: Antworten mit Zitat

Ersteres wäre natürlich das Leichteste aber ich will ein Programm schreiben, dass solche exe files erzeugen kann.
Das es schwer wird merk ich, bzw. es ist schwer Infos zu finden.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 14:01    Titel: Antworten mit Zitat

Jonathan_Klein hat Folgendes geschrieben:
Naja, du kannst biem Compileiren natürlich Ressourcen einbindne, aber selber von einem Prog, in eine andere eine Ressource einbinden, keine Ahnung, dürfte leicht schwerer sein.


Chriss hat Folgendes geschrieben:
Ersteres wäre natürlich das Leichteste aber ich will ein Programm schreiben, dass solche exe files erzeugen kann.
Das es schwer wird merk ich, bzw. es ist schwer Infos zu finden.


Ja, sollte eigentlich auch im ersten Post ersichtlich sein Wink

Chriss hat Folgendes geschrieben:
Gefunden habe ich bisher nur die Möglichkeit Ressourcen mit in eine Datei zu kompilieren. Da ich Jedoch ein kleines Programm schreiben will das etwas wie ein selbstextrahierendes Ziparchiv erzeugen soll muss ich die Daten irgendwie zusammenbasteln nachdem die exe erstellt worden ist.

_________________
www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console


Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
manu
Super JLI'ler


Alter: 35
Anmeldedatum: 09.03.2006
Beiträge: 327
Wohnort: allgäu (DE)
Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 14:48    Titel: Antworten mit Zitat

Ich könnte mir das nur so vorstellen.

Ein programm ließt alle dateien ein und Packt sie in ein Array, welches im folgenden in eine Datei.xxx gespeichert wird.

Jetzt ist dann halt die Frage, auch deine, wie man es schafft, dass beim ausführen der entstandenen Datei wieder alles schön ausgepackt wird.
das heißt, dass die entstandene Datei neben den Dateien im Array auch noch den auspack algo etc. beinhalten muss und sie muss ausführbar sein.

Das würde heißen, dass die von dir gewünschte .exe datei dynamisch von einem anderen Programm erzeugt werden muss. Also ausführbare exe + dateiarrayanhang zur Laufzeit generieren..

also ich komm da auch nich weiter und mich würde die, bzw. eine, lösung sehr interessieren.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
foreach
ehem. hanse



Anmeldedatum: 08.05.2004
Beiträge: 183

Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 15:05    Titel: Antworten mit Zitat

Naja ich denke du musst dein Portable Executable Header anpassen. KA wie das am einfachsten geht. http://www.microsoft.com/whdc/system/platform/firmware/PECOFF.mspx
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Chriss
Senior JLI'ler



Anmeldedatum: 18.08.2004
Beiträge: 267

Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 15:25    Titel: Antworten mit Zitat

@hanse: Scheint genau das zu sein, was ich brauche. Danke.

Da die Dokumentation etwas ausführlich ist, kann es etwas dauern, bis ich was funktionierendes hab. Sobald ich was praktikaples zusammen hab kann ich etwas dazu posten
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Loigie
Junior JLI'ler



Anmeldedatum: 29.06.2004
Beiträge: 52
Wohnort: NRW
Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 15:31    Titel: Antworten mit Zitat

Mit Lord PE kann man einzelene Sections und auch den Portable Executable Header anpassen aber wie man dan darauf zugreifen kann weis ich auch nicht. Vielleicht hilft es wenn man sich ein bischen mit dem Portable Executable-Format(und Assembler) auseinandersetzt Rolling Eyes
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Chriss
Senior JLI'ler



Anmeldedatum: 18.08.2004
Beiträge: 267

Medaillen: Keine

BeitragVerfasst am: 21.02.2007, 16:06    Titel: Antworten mit Zitat

Der Zugriff zum lesen sollte recht leicht sein.
Ich wollte das so machen das ich beim ersten kompilieren eine Variable mit einer beliebigen Zahl initialisiere um einen Platzhalter zu haben. Nach dem kompilieren muss ich nur noch nachsehen wie groß die Datei (ohne Anhang) ist und füge diesen Wert anstelle des Platzhalterwerts ein. Damit weiß mein Programm wo es aufhört und der Rest ist dann Anhang. Diesen wollte ich chunkbased machen. Hört sich jetzt einfach an aber bestimmt gibt es da noch etwas von dem ich nicht weiß.

Schreiben wäre da etwas anderes da ich schon mehrfach gelesen habe das Programme schreibgeschützt geöffnet werden. Das hatte ich zum Glück aber auch (noch) nicht vor.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum