Seite 1 von 2

Dateien aus einer *.exe Datei auslesen

Verfasst: Montag 22. Dezember 2008, 16:34
von INFACT
Hallo,
Ich würde gerne wissen wie man dateien aus einer exe Datei auslesen kann, wen nes überhaupt möglich ist. Ich stelle mir da folgendes vor:

Code: Alles auswählen

def lies(datei):
        datei=str(datei)
	fobj=open(datei,"r")
	for line in fobj:
		print line
das funktioniert bei text dateien und bei Python Dateien aber nicht bei *-exe Dateien. Da ergibt sich dann folgendes:

Code: Alles auswählen

MZミ
$
:roll:
Wenn es eine Möglichkeit gibt, dort eine Menschliche Sprache heraus kommen zu lassen, bitte ich um eine Antwort! :D

Verfasst: Montag 22. Dezember 2008, 16:39
von abgdf
"Binäres Datenformat" ist bekannt ?

http://de.wikipedia.org/wiki/Bin%C3%A4rdatei

Verfasst: Montag 22. Dezember 2008, 16:41
von Trundle
Es funktioniert doch auch bei .exe-Dateien, wie du siehst. Nur was soll da denn rauskommen? Also was willst du eigentlich auslesen? Außerdem liest das keine "Dateien", sondern Zeilen, was bei einer Textdatei irgendwo Sinn ergibt, bei einer Binärdatei jedoch eher weniger.

Verfasst: Montag 22. Dezember 2008, 16:42
von INFACT
Nein bis jetzt noch nicht.
Danke für die Seite

Verfasst: Montag 22. Dezember 2008, 16:43
von derdon
Unter Windows funktioniert das mit dem Programm debug.exe, bei Unix-Systemen ist meistens das Tool hexdump vorhanden. Siehe auch http://de.wikipedia.org/wiki/Hexdump#Hexdump und http://www.wer-weiss-was.de/theme9/article940005.html

Verfasst: Montag 22. Dezember 2008, 18:05
von Leonidas
Die Frage ist ja eigentlich: was erwartest du aus Programmen auszulesen? Was willst du da sehen?

Verfasst: Montag 22. Dezember 2008, 18:25
von INFACT
Weiß ich auch nicht so genau, ich schätze mal, eine Sprache wie C++ oder so...
Ich habs mal ausprobiert und dann kam soetwas dabei heraus.

Verfasst: Montag 22. Dezember 2008, 18:27
von DasIch
Von der Programmiersprache wirst du nichts mehr sehen, generell wirst du wohl eher nichts verwertbares bekommen.

Verfasst: Montag 22. Dezember 2008, 18:41
von INFACT
Das habe ich gemerkt :?
Gibt es denn irgenteine Möglichkeit das zu konveriteren wie "exe2py" :lol: oder so, damit man das lesen kann?

Verfasst: Montag 22. Dezember 2008, 18:47
von OverNord
Du suchst also einen Decompiler?

Verfasst: Montag 22. Dezember 2008, 18:51
von INFACT
Ja so in etwa.
Oder ist das in Deutschland verboten???

Verfasst: Montag 22. Dezember 2008, 18:55
von Leonidas
Nicht generell, jedoch etwas besseres als Assembler-Code kannst du nicht erwarten.

Verfasst: Montag 22. Dezember 2008, 19:02
von DasIch
Du kannst für dich natürlich alles mögliche dekompilieren nur veröffentlichen solltest du es nicht.

Verfasst: Montag 22. Dezember 2008, 19:11
von INFACT
Ok, danke, dass ist zwar nicht das was ich erwarted habe, aber es reicht mir.
Nur noch eine Frage:
py2exe convertiert dann *py in Assembler?

Verfasst: Montag 22. Dezember 2008, 19:23
von BlackJack
@INFACT: Nein, py2exe packt ein Python Programm zusammen mit Interpreter und allem was man sonst so benötigt in eine EXE-Datei.

Verfasst: Montag 22. Dezember 2008, 19:39
von INFACT
Ich dachte eine exe datei ist assembler...???

Verfasst: Montag 22. Dezember 2008, 19:52
von cofi
.exe beschreibt nichts anderes als ein Windows executable. Die Endung für Assembler ist .asm . Eine exe ist aber nie Assemblercode, sondern (meist ;)) Maschinencode.

Verfasst: Montag 22. Dezember 2008, 19:58
von INFACT
Ah, Ok aber jetzt habe ich es verstanden. ;)

Verfasst: Montag 22. Dezember 2008, 20:14
von lunar
Leonidas hat geschrieben:Nicht generell, jedoch etwas besseres als Assembler-Code kannst du nicht erwarten.
Doch, eigentlich schon generell. Erlaubt ist es nur, wenn es der Herstellung der Interoperabilität dient oder im Lizenzvertrag explizit erlaubt wurde.

Verfasst: Montag 22. Dezember 2008, 20:38
von Leonidas
lunar hat geschrieben:Doch, eigentlich schon generell. Erlaubt ist es nur, wenn es der Herstellung der Interoperabilität dient oder im Lizenzvertrag explizit erlaubt wurde.
Oder es Freie Software ist. Die ja auf Windows durchaus auch ab und zu vorkommt. Also "nicht generell".