MessageBox mit reinem Assembler
-
Hallo,
Könnte man mit reinem Assembler ohne irgendwelche Include Geschichten z.b. eine MessageBox Programmiern?
Weil hier wird ja auch so einiges Includet und ich kannte das bisher auch nur mit den Includes.
Ich würde halt gerne mal so die Hintergründe davon verstehen ...
http://win32assembly.online.fr/tut2.html
Assembler Code:
.386 .model flat,stdcall option casemap:none include \masm32\include\windows.inc include \masm32\include\kernel32.inc includelib \masm32\lib\kernel32.lib include \masm32\include\user32.inc includelib \masm32\lib\user32.lib .data MsgBoxCaption db "Iczelion Tutorial No.2',0 MsgBoxText db "Win32 Assembly is Great!',0 .code start: invoke MessageBox, NULL, addr MsgBoxText, addr MsgBoxCaption, MB_OK invoke ExitProcess, NULL end start
-
Achtung - Spitzfindigkeit:
Ja, geht. Frag mich zwar nicht nach Details, aber im Prinzip sollte es auch mit dem MASM moeglich sein, MessageBox und ExitProcess als extern zu deklarieren und statt den restlichen Konstanten wie MB_OK einfach die entsprechenden Zahlen hin zu schreiben. Dann brauchst du nichts mehr inkludieren...
Musst allerdings nach wie vor zumindest gegen die kernel32.dll linken.In Windows-Programmen kommst du ohne externe Funktionen nicht aus, da du iaR. keinen Zugriff auf periphere Hardware hast.