Autor Beitrag
Mäthew Glide
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 31



BeitragVerfasst: Fr 11.12.09 23:01 
Hallo!
Ich hab mal eine Frage: Ich habe eine .exe DAtei bekommen die mit Delphi geschrieben wurde, allerdings fehlen mri die andere Dateien um es zu öffnen und zu bearbeiten. Gibts es irgendeine Möglichkeit diese exe DAtei wieder umzuwandeln?
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8548
Erhaltene Danke: 477

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Fr 11.12.09 23:10 
Den Delphi-Quellcode (*.pas) kann man nicht wieder herstellen. Die DFM-Dateien geht wohl, aber das ist dann schon alles (hab ich gehört, aber das bringt einem ja nun auch nicht viel).

Ich zitiere (mal wieder) user profile iconLuckie: Kann man aus einem Kilo Halb-und-Halb wieder die Kuh und das Schwein bauen?

_________________
We are, we were and will not be.
Mäthew Glide Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 31



BeitragVerfasst: Fr 11.12.09 23:20 
okay danke und sau gutes Zitat gefällt mir echt
turboPASCAL
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 193
Erhaltene Danke: 1

Win XP / Vischda
D6 PE / D2005 PE
BeitragVerfasst: Sa 12.12.09 00:15 
Theoretisch ja. ;)

Da Exectutable Dateien aus Assemblerbefehlen usw. bestehen kann man diese
mit diversen Disasseblern in die Assembler-Programiersprache "wandeln".
Jetzt müsste man diesen wieder in eine Delphisprache umsetzen.

Da aber alle Variablen, Funktionen und Prozedurennamen nicht mehr existent sind
würden diese durch neue, anders benannte ersetzt werden. Das wiederum würde
den Code schwer lesbar machen.

Was die Fenster (Forms) angeht, ist nur dann möglich wenn sie als Resource
mit in die Exectutable übernommen wurde, also bei der VCL-Programmierung.
Bei einigen nonVCL-Programmen werden diese direkt im Programmcode erzeugt.

_________________
Nein, ich bin nicht der turboPASCAL aus der DP, ich seh nur so aus... :P
alzaimar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2889
Erhaltene Danke: 13

W2000, XP
D6E, BDS2006A, DevExpress
BeitragVerfasst: Sa 12.12.09 09:15 
user profile iconturboPASCAL hat folgendes geschrieben Zum zitierten Posting springen:
Theoretisch ja. ;)

Definiere: Theoretisch.

user profile iconturboPASCAL hat folgendes geschrieben Zum zitierten Posting springen:
Da Exectutable Dateien aus Assemblerbefehlen usw. bestehen kann man diese
mit diversen Disasseblern in die Assembler-Programiersprache "wandeln".
Jetzt müsste man diesen wieder in eine Delphisprache umsetzen.

"Man müsste einfach nur..." hat man auch über KI gedacht: Und bis heute is nix draus geworden. Es gibt Dinge, die man "einfach nur machen müsste", aber nie hinbekommt. Z.B. müsste man ja eigentlich nur das Licht einholen, das vor 10 Jahren von der Erde abgestrahlt würde, und schon hätte man einen Blick in die Vergangenheit geworfen.

Mich würde der Algorithmus interessieren, der optimierten Code wieder zurückverwandelt. Sowas wie "Neuronales Netz" allein reicht da nicht. "Fuzzy Logic" und "Mustererkennung" wären noch Kandidaten. Aber der wirkliche Algorithmus bleibt mir verborgen. Oder hast Du eine Vorstellung?

_________________
Na denn, dann. Bis dann, denn.
Flamefire
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1207
Erhaltene Danke: 31

Win 10
Delphi 2009 Pro, C++ (Visual Studio)
BeitragVerfasst: Sa 12.12.09 12:33 
Ich definiere: Man schaue sich den Code im Disassembler an und rekonstruire daraus Delphi Code.
Mit genügend Zeit, etwas Verständnis für den Code, den man analysiert, und umfangreichem Assembler-Kenntnissen, ist es möglich.

So wie es möglich ist, Primzahlen per Hand zu berechnen ;-)
JoelH
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 806
Erhaltene Danke: 17

Win10
Delphi Alexandria 11.2 Patch 1
BeitragVerfasst: Mo 14.12.09 12:00 
user profile iconFlamefire hat folgendes geschrieben Zum zitierten Posting springen:
Ich definiere: Man schaue sich den Code im Disassembler an und rekonstruire daraus Delphi Code.


Das halte ich bei Optimierung für nahezu unmöglich.

Wenn du nur das Ergebnis einer Rechnung, nehmen wir einfach mal 42, hast, dann kannst du daraus den Rechenweg nicht mehr rekonstruieren. Es kann 36+6 sein, es kann aber auch 7*6 oder 84/2 usw. sein.

Sicherlich könnte man diverse Strukturen rekonstruieren aber das würde recht rudimentäres Stückwerk bleiben und wohl den Aufwand nicht lohnen, denn trotz allem kämst du ohne gehörige Assemblerkentnisse auf keinen grünen Zweig.

_________________
mfg. Joel
muetzenjoe
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 56

Win XP / Win Vista
# Delphi 6 Enterprise; # HTML Editor Phase 5; # Ulead Gif Animator 5;
BeitragVerfasst: So 20.12.09 00:07 
Es gab da doch mal sonen Delphi Decompiler ?!?

www.softpedia.com/ge...der-Decompiler.shtml

delphi.about.com/od/.../a/decompiling_3.htm

www.program-transfor...ecompilationPossible

und der bekannteste: www.softpedia.com/ge...asemblers/DeDe.shtml

Kein Plan obs funzt! Wollte es vor Jahren mal testen aber habs irgendwie nie getan *g

_________________
Sind wir nicht alle ein wenig Newbee???
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: So 20.12.09 00:18 
Da kommt aber auch nur Assembler raus:
Zitat:

Note: pas files contains the mentioned above well commented ASM code. They can not be recompiled !

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.