Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Geht´s auch umgekehrt?? (https://www.delphipraxis.net/4169-geht%B4s-auch-umgekehrt.html)

nailor 18. Apr 2003 01:13

Ja, man müsste nur unabhängig von variablen-Namen u.ä. alle möglich Quelltexte durchgehen, und irgendwann käme die gewünschte exe-Datei dabei heraus. Das bedeutet, man hätte einen der möglichen Quelltexte gefunden, die diese exe erzeugen. Das ginge schon, würde zwar etwas dauern, und wäre wahrscheinlich noch nicht mal illegal, sondern nur in der Grauzone, weil du eigentlich (ausser Dateien von dir damit zu vergleichen) mit der exe nichts gemacht hast...

Daniel B 18. Apr 2003 10:06

Hallo,

sollte es irgend jemandem gelingen, den Code wieder rauszufieseln, denke ich das es sehr schnell, viele Programmierer werden gibt, die die Sprache wechseln!! Den wer programmiert schon gerne in einer Sprache, wofür es decompilier Tools gibt. Ich jedenfalls nicht.

Grüsse, Daniel :hi:

Luckie 18. Apr 2003 10:44

Das GEHT nicht!!!!

Das ist wie, als wenn du 1000 kg Gehacktes halb und halb hast und wolltest daraus wieder das Schwein und das Rind machen.

TheXception 18. Apr 2003 10:49

Schaut euch einfach mal das an:
EXE2DPR
Geht (manchmal) auch bei Delphi 5-7.

Daniel 18. Apr 2003 10:56

Hallo,

dieses Programm macht etwas leicht anderes: Es extrahiert die Formular-Ressourcen aus einer EXE-Datei. Das ist tatsächlich ohne großen Aufwand machbar. Den eigentlichen Programmcode wirst Du auch damit nicht erhalten:

Zitat:

Rescuer produces all project forms and data modules with all assigned properties and events. Produced event procedures don't have a body (it is not a decompiler), but have an address of code in executable file.

Luckie 18. Apr 2003 10:58

Jupp. Und so sieht das Ergebnis aus:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
// Address $444240
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
// Address $444320
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
// Address $4444E0
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
// Address $4445C0
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
// Address $4446A8
end;
Das Formular wurde allerdings korrekt wieder hergestellt, aber das ist ja auch in der Ressource der Exe drin und dafür gibt es sogar APIs, um da ran zu kommen.

digleu 5. Sep 2004 15:33

Re: Geht´s auch umgekehrt??
 
hm naja sagen wir der Quellcode hat 15000 Zeichen (superwenig) und jedes Zeichen kann jeder Buchstabe (Groß- und Kleinschreibung ist in Delphi egal) und einige Sonderzeichen (sagen wir 20 verschiedene) sein. Dann gibt es ca. 2,330*10^24941 verschiedene Quellcodes, das ist eine 2 mit 24941 Nullen daran. Würde ein Computer pro Sekunde 2.000.000 davon erzeugen, kompilieren und vergleichen können, dann würde er immernoch weit über 20000 Trillionen Jahre brauchen um sie zu vergleichen. Aber illegal wäre es ja eigentlich nicht, denn man vergleicht ja nur 2 Dateien und eine davon hat man selbst "erstellt".

mfg Lars

<edti>ein "weit" hinzugefügt ;)</edit>


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:12 Uhr.
Seite 2 von 2     12   

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 by Thomas Breitkreuz