Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi EXE in RES aus dem Speicher aufrufen (https://www.delphipraxis.net/28357-exe-res-aus-dem-speicher-aufrufen.html)

Whistler 23. Aug 2004 17:28


EXE in RES aus dem Speicher aufrufen
 
Hallo,

ich habe eine EXE-Datei in ein RES-File gepackt und kompiliert.
Das Produkt habe ich in mein Projekt integriert.

Das Programm, welches in dem RES File ist, setzt Attribute.
Im Hauptprogramm wählt der User also ein Verzeichnis und drück auf "Ausführen". Nun sollte diese integrierte EXE per ShellExecute (oder anders?!) ausgeführt werden, mit den Parametern die ich übergebe.

Soweit auch kein Problem. Nur muss ich bis dato die integrierte EXE vorher extrahieren (irgendwo uf der HDD speichern) und kann erst dann auf sie zugreifen. Das will ich aber nicht. Die integrierte EXE muss quasi nur für das Programm (im Speicher?) verfügbar sein...

Blutiger Anfänger 23. Aug 2004 17:29

Re: EXE in RES aus dem Speicher aufrufen
 
Inwieweit bist du mit den Begriffen PE, Relocations, IAT-Patching vertraut?

Whistler 23. Aug 2004 17:36

Re: EXE in RES aus dem Speicher aufrufen
 
Die Begriffe gehört habe ich, mehr auch nicht.

Blutiger Anfänger 23. Aug 2004 17:56

Re: EXE in RES aus dem Speicher aufrufen
 
Dann hol dir doch bitte mal zu diesen Themen zuerst Infos ein. Die Antwort ergibt sich dann fast wie von selbst. Ob es natürlich notwendig ist solche Verrenkungen zu machen, nur weil du mal eben Attribute (von Dateien?) ändern willst ist sicher Overkill.

Grob beschrieben mußt du folgendes tun:

1. Die Ressource in der richtigen Granularität an einen anderen Platz im Speicher packen.
...
und dann CreateProcess komplett selber nachempfinden (inkl Parameterübergabe).

Mit DLLs ist das noch relativ einfach - mit EXEs _war_ es unter DOS möglich, bezweifele dies aber für Windows (mindestens die NT-Reihe).

Whistler 23. Aug 2004 18:02

Re: EXE in RES aus dem Speicher aufrufen
 
Die EXE macht etwas mehr :)
Es geht sich allgemein darum, dass niemand hingehen kann und während der Ausführung meines Programms diese EXE "klauen" kann und selbst verwendet.

Blutiger Anfänger 23. Aug 2004 18:05

Re: EXE in RES aus dem Speicher aufrufen
 
Kann ich doch auch so mit einem Resource-Editor.

Whistler 23. Aug 2004 18:37

Re: EXE in RES aus dem Speicher aufrufen
 
...daran habe ich natürlich nicht gedacht :)
Entsprechend ist der Schutz auch überflüssig... *grml*

Oder kennst du bzw. jemand anderes 'ne Möglichkeit das RES-File zu schützen - aber imho wohl nicht möglich... :(

Blutiger Anfänger 23. Aug 2004 18:56

Re: EXE in RES aus dem Speicher aufrufen
 
Klar, kannst die Binärdatei vorher verschlüsseln - das Endproblem bleibt aber (entpacken oder nicht der EXE nach Entschlüsseln).

toms 23. Aug 2004 18:58

Re: EXE in RES aus dem Speicher aufrufen
 
Du könntest auch machen, dass man die Exe nur mit einem bestimmten Parameter starten kann.

Blutiger Anfänger 23. Aug 2004 19:02

Re: EXE in RES aus dem Speicher aufrufen
 
Braucht er ja den Source der EXE, oder? Hätte er den, würde er sie doch hoffentlich nicht als Ressource einbetten, oder?


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:20 Uhr.
Seite 1 von 3  1 23      

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