Von eigener Exe lesen

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

TerrorMachine

Betreff: Von eigener Exe lesen

BeitragMi, Jul 08, 2009 11:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Kann eine exe seinen eigenen Inhalt lesen?
Ich will einen eigenen Exepacker schreiben, aber bei ReadString(file) kommt ein MAV. Der Stream ist offen (nicht 0) und ein ReadString auf diese Stelle der Datei (wenn sie nicht offen ist) geht auch.

Wo kann das Problem liegen?
Auf Wunsch gibts den Codeausschnitt.

Tankbuster

BeitragMi, Jul 08, 2009 11:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Problem ist, dass man unter Windows laufende Programme nicht ändern/öffnen kann. Wink
Twitter
Download Jewel Snake!
Windows|Android

Thunder

BeitragMi, Jul 08, 2009 11:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Ändern nicht, öffnen aber schon. D.h. du kannst deine eigene EXE lesen, aber wirklich NUR lesen.
ReadFile, ReadByte oder ReadBytes mit Bank.


Readstring funktioniert wahrscheinlich nicht, weil es nur bis zum nächsten Nullterminierungszeichen liest.(glaub ich)
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit

Tankbuster

BeitragMi, Jul 08, 2009 12:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein, Readstring ließt erst einen Integer aus, der die länge des darauffolgenden Strings angibt. Aber mal wirklich. Wenn man einen ExePacker schreibt, wird man nie Readstring verwenden, sondern nur ReadByte und vielleicht [ReadInt.
Twitter
Download Jewel Snake!
Windows|Android

hazumu-kun

BeitragMi, Jul 08, 2009 12:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du ein laufendes Programm überschreiben willst kannst du das nicht direkt. Du kannst die EXE aber einfach unter anderem Namen ins selbe verzeichnis kopieren und in die Kopie dann problemlos schreiben und lesen..
Warum kann es keine omnipotente Macht geben?
Weil diese omnipotente Macht in der Lage sein müsste, einen so schweren Stein zu schaffen, dass sie ihn nicht heben kann
-> nicht omnipotent
 

TerrorMachine

BeitragMi, Jul 08, 2009 20:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Lesen funktioniert irgendwie nicht. Die Strings wurden auch mit WriteString geschrieben.
Habs jetzt aber mit einer Kopie geschafft. Jetzt stellt sich für mich nurnoch die Frage, wieso die EscapeGUI auf manchen Rechnern schwarze Fenster zeichnet... hat anscheinend aber keine eine Antwort darauf.

@Tankbuster: Ich mach mir ganz sicher nicht die Arbeit und schreibe die Filenamen mit WriteByte einzeln in die Datei. Die Daten schreibe ich natürlich mit WriteByte...

War auch nur ein kleines Zwischenprojekt... Ist nach 2 Tagen fast schon fertig.

Valnar

BeitragDo, Jul 09, 2009 17:01
Antworten mit Zitat
Benutzer-Profile anzeigen
TerrorMachine hat Folgendes geschrieben:
Jetzt stellt sich für mich nurnoch die Frage, wieso die EscapeGUI auf manchen Rechnern schwarze Fenster zeichnet... hat anscheinend aber keine eine Antwort darauf.


Dieser Fehler passiert auf einigen VISTA und XP SP3-Rechnern.
Warum und wie man es ändern kann weiss keiner.
Es liegt wohl daran, dass manchmal der DX7-Emulator (DirectX9 Emuliert DX7 nach meinem Wissen nur) durcheinander gerät.
 

TerrorMachine

BeitragDo, Jul 09, 2009 19:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab aber Windows XP Professional SP2.
Ich werd DX und Graka Treiber neu installieren. Oder liegts an meiner MSI 8800GT? Kann ich mir fast nicht vorstellen, da sonst auch keine Fehler auftreten.

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group