• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Windows Programm Sourcecode auslesen

kasimir83

Lounge-Member
Jetzt mal an die ganz Harten:

Ich habe ein Programm bekommen, dass im Prinzip eine Benutzeroberfläche eines normalen Windowsprogs hat (Datei, Bearbeiten, Kreuzchen oben rechts, etc.) Dieses Programm errechnet aus gegebenen Daten eine Summe. Nun soll ich aus diesem Programm ein für Kunden abgespecktes Formular machen, stehe aber vor dem Problem, dass ich zwar Anfangs- und Endwerte habe, aber nicht die eigentlichen Algorithmen. Und der Bursche hat irgenwo einen Rundungsfehler gemacht, da aber auch das Ergebnis gerundet ausgegeben wird, habe ich wahrscheinlich keine Chance, den Fehler zu finden.

Wo finde ich ein Programm, mit dem ich den Quellcode dieses Programms auslesen kann, um dadurch an die Algorithmen zu gelangen? Geht das überhaupt?

Dank und Gruß vom
Kasimir
 
Soviel ich weiß, ist das illegal, da das Urheberrecht eine "Rückentwicklung" des Programms bzw. eine Vervielfältigung von Programmteilen untersagt

Es SOLLTE jedoch grundsätzlich möglich sein:
und zwar mit einem "DECOMPILER".

Manche Firmen bieten diesen Dienst an und zwar gegen eine Gebühr - die Sprache in der das Programm geschrieben wurde sollte man allerdings wissen.
 
Ist in diesem Fall rechtmäßig weil das Copyright bei der Firma liegt von der ich den Auftrag habe.
Aber Freewaretools die sowas können?
 
Du willst aus einer Windows Exe einen wieder kompilierfähigen Quelltext extrahieren?? Vergiss es!!
Bestenfalls kriegst Du Assembler Code raus, den Du mit Sicherheit weder lesen noch verändern können möchtest. Für die wenigsten höheren Sprachen gibt es überhaupt ansatzweise Decompiler, meist sind diese aber sowas von grottenschlecht, daß es sich nicht lohnt, oder die Sprache kann nicht wieder hergestellt werden, weil beim kompilieren einiges an Infos zerstört wird.
Für VB3 / 4 gab / gibt es wohl Decompiler.
Wenn Du den SourceCode nicht hast, dann hast Du erstmal verloren, neuschreiben wird am schnellsten und am billigsten sein, als mittels irgendwelcher Tools zu versuchen irgendetwas zu extrahieren (wobei an die Resourcen, d.h. Menuzeile, Dialogmasken, Stringtabellen, Icons, Cursor, usw, wirst Du wohl locker rankommen ;) )
Sollte es für die in der Anwendung verwendete Programmiersprache einen Decompiler geben, so ist der vermutlich nicht kostenlos, sondern schweineteuer. Wobei die Schwierigkeit besteht, überhaupt erstmal rauszufinden, welche Sprache dahintersteht (wenns nicht irgendwo in den Akten vermerkt ist....)

Versucht den Programmierer beizuzerren, und bietet ihm Kohle für den Quellcode, vielleicht kommt ihr so am besten weg.... hättet ihr nur damals den Quellcode mitgekauft ;)
 
bei manchen Compilern werden noch sogenannte Debuginformationen der exe-Datei hinzugefügt. Diese Debuginformationen enthalten auch (manchmal) den Quellcode
 
Nicht, wenn ich einen Release Build mache, was bei den meisten Programmen der Fall sein wird. Ein Debug Build enthält nicht den Quellcode, sondern lediglich weitergehende Informationen (wie Zeilennummern, Typen, usw.) über die Symbole und Funktionen in der Exe, so daß ein Debugger den entsprechenden Quelltext lokalisieren, laden und parallel zur Ausführung anzeigen kann. Der Quelltext ist aber immer extern (außer man hat eine Interpretersprache wie VB oder Actionscript).
 
Das ist mir neu, ist das bei Delphi auch noch so? Bist Du sicher, daß der komplette Code enthalten ist, mit allen Objekten, Funktionen und allem? Kannst Du damit debuggen, ohne daß der Quellcode auf der Platte ist?
Mit Sicherheit ist es aber nur im Debug Build enthalten, und sowas liefern Softwareentwickler nur in seltenen Fällen geistiger Umnachtung aus. Zumal sowas ja auch nicht gerade performant rennt....:)
 
dann sind das vermutlich nicht korrekt initialisierte Speicherblöcke aus dem Hauptspeicher, in denen vorher Quellcode-Puffer des Editors lagen, und die dann auf der Platte gelandet sind...
 
ich kann mich da Albu (leider für deine problemstellung) nur anschließen: vergiß es!!! du wirst keinen brauchbaren code auslesen können. nichtmal fraqumente wirst du zu gesicht bekommen.

fazit:
1. neu coden
2. code vom erschaffer beschaffen

=> ich würde mich allerdings für punkt 1 entscheiden. ist sicher billiger, du brauchst mit niemanden herumverhandeln und es ist dein geistiges eigentum wo du dich schnell (auch später mal) zurechtfindest.
 
Zurück
Oben