Hallo liebe Leute,
Ich würde gerne wissen, warum der Offset von dem Text, das angezeigt wird, wenn man eine
Win32 Applikation in einem zB Dos Emulator ausführt, so komisch ist.
Der Text befindet sich in der Exe zwischen dem Dos Header und dem NT Header.
Code:
Hex Darstellung:
Begin Offset: $40
BA10000E1FB409CD21B8014CCD219090546869732070726F6772616D206D7573742062652072756E20756E6465722057696E33320D0A24370000000...0000
End Offset: $100
Ascii Darstellung:
´ Í!¸LÍ!This program must be run under
Win32
$7
Wenn man das dissassembliert sieht man schön, das der $21 Interrupt mit AH = 9 ausgeführt wird:
Code:
mov edx, 0x1f0e0010
mov ah, 0x9
int 0x21
Warum ist hier jedoch EDX = $1f0e0010 ?
Bei mir befindet sich der Text zur Laufzeit bei $400040 - so wie sich das eben gehört.
Kann es sein, dass die Appliaktion im Dos Modus ganz anders geladen wird und somit der Offset auch ein ganz anderer ist?
MfG
[edit=Luckie]Zeilenlänge korrigiert. Mfg, Luckie[/edit]