Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
02.05.2002, 20:56
Retro



Eigentlich sagt das Topic schon alles aus ^^

Ich habe ein Programm da (nur die EXE) und möchte herausfinden in welcher Sprache es programmiert wurde, vielleicht auch den verwendeten Compiler.

(Wie) Geht das? Da gibts doch bestimmt irgendwelche Kniffe...

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */

zum Seitenanfang zum Seitenende Profil || Suche
001
02.05.2002, 21:00
Exec



ach, jetzt willste wohl wissn, in welcher sprache hyper-terminal geschrieben is?! :D

--

"selbermachen rockt am meisten :D" - -LeJean-

zum Seitenanfang zum Seitenende Profil || Suche
002
02.05.2002, 21:15
Retro



Nein.

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */

zum Seitenanfang zum Seitenende Profil || Suche
003
02.05.2002, 21:16
Kriz



Tja, da jede EXE in Maschinensprache (rein binär) vorliegt, kannst du nur mittels Hexeditor darauf hoffen, daß der jeweilige Compiler eventuell einen Identkommentar eingefügt hat. Da ich aber mal davon ausgehe, daß Compiler nur den reinen Prozeßcode in Maschinensprache umwandeln und sonst auch nichts weiter Großartiges dabeipacken, sieht jede EXE gleich aus und man kann nicht mehr sehen, ob das ursprünglich mal C/C++ oder Delphi oder was auch immer gewesen war.

--

K:R-I)Z++
"CSS ist cascading style sheets. Und nicht so'n Ranzspiel." - dp
In memory of Voice († 2005/03/30)

zum Seitenanfang zum Seitenende Profil || Suche
004
02.05.2002, 21:31
Retro



Genau auf sowas hab ich gehofft, ne Art von Brandmarke versehen vom Compiler, ich werd mich nochmal nen bisschen umhören.

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */

zum Seitenanfang zum Seitenende Profil || Suche
005
02.05.2002, 21:47
hausi



Einen kleinen Tipp: Lösch die VB-DLLs. Wenn es dann nicht mehr geht, wars wohl VB... :D

--

zum Seitenanfang zum Seitenende Profil || Suche
006
02.05.2002, 23:49
Andy_



Och, es gibt schon Möglichkeiten Die Programmiersprache herauszufinden, z.B. durch Erkennung von den benötigten DLLs, bzw. Librarys. Dazu gibt es einfache Tools, wie z.B. eXeScope oder Resourcehacker. Mit diesen Tools, kann man nicht nur die Abhängigkeit leicht überblicken, sondern sogar das Programm verändern und direkt kompilieren. Jedoch wird man ohne Außreichende Kenntnisse wohl kaum mehr, als ein paar Texte, und die W32 Oberfläche davon ändern können.
Jede Programmiersprache kann man dadurch natürlich nicht ermitteln, das kommt auf den Compiler und Compiler-Einstellungen an.

--

42 Es gibt keinen Sinn des Lebens.

zum Seitenanfang zum Seitenende Profil || Suche
007
03.05.2002, 09:35
TheTinySteini



Also, bei Delphi (und vermutlich auch bei C++Builder, allgemein bei VCL-Programmen, denke ich) findet man am Anfang der .exe ein paar Typennamen wie Cardinal, Widestring, TObject. Solche gibt's bei VC++ definitiv nicht. Hängt von den Units ab, die man verwendet, aber oft findet man zum Schluss der .exe noch ein paar weitere Typen oder auch Namen von Textfeldern etc, die man definiert hat.
Bei VC++ / anderen C++-Compilern hat man oft nur die Möglichkeit nach verdächtigen Textstrings ausschau zu halten. Wenn dort Formatierungszeichen wie %i drin vorkommen, is es wahrscheinlich C/C++. Den Compiler findet man aber nicht raus. Wenn man allerdings Anzeichen der MFC entdeckt, is es mit 99,9%iger Wahrscheinlichkeit VC++ gewesen. Oder auch, wenn man Strings wie diesen hier entdeckt: "Microsoft Visual C++ Runtime Library".
Die VBasic-Progs die ich mir gerade angeguckt hab, hatten alle in den ersten 100-200 Bytes oso den Text "MSVBVM60.DLL" (für VB 6.0 jetzt).
Gibt also kein Patentrezept, aber doch immerhin Möglichkeiten. Wenn du's automatisieren willst, is natürlich schlecht.

--

TheTinySteini
Coder Poke646
"Don't Panic" - Hitchhiker's Guide to the Galaxy

zum Seitenanfang zum Seitenende Profil || Suche
008
03.05.2002, 15:18
[RMen]OneStone



Du kannst dir mal den Overhead vom ASM-Code angucken, manchmal ist das relativ aufschlußreich. Wär ja mal ne Herrausforderung ein Tool zu schreiben, welches anhand diverser Merkmale der .exe herausfindet, in welcher Sprache sie geschrieben wurde.

--

georg-wicherski@pixel-house.net | http://www.pixel-house.net/ - Coding Resource| http://www.google.de/

zum Seitenanfang zum Seitenende Profil || Suche
009
03.05.2002, 22:53
TheTinySteini



Jo. Viel Spaß =)

--

TheTinySteini
Coder Poke646
"Don't Panic" - Hitchhiker's Guide to the Galaxy

zum Seitenanfang zum Seitenende Profil || Suche