0

私はfasmを使用してasmを学習し始めますが、残念ながら、以下のコードをコンパイルした後、「アプリが動作を停止しました」というエラーが発生します。Win764ビットを使用しています。なぜそれが機能しないのか誰かが知っていますか?

format PE Console 4.0
include 'win32a.inc'

push MB_OK
push _tresc
push _tytul
push 0
call [MessageBoxA]

push 0
call [ExitProcess]

mov eax,0
ret

_tytul  db "Tytul",0
_tresc  db "Hello world :)",0

data import
    library user32,'USER32.DLL'
    library kernel32,'KERNEL32.DLL'
    import user32,\
        MessageBoxA,'MessageBoxA'
    import kernel32,\
        ExitProcess,'ExitProcess'
end data
4

1 に答える 1

4

ライブラリマクロの呼び出しは1つだけです。ExitProcessはインポートされず、間違ったアドレスを呼び出します。すべてを1つのライブラリ呼び出しに入れます。

data import
    library user32,'USER32.DLL',kernel32,'KERNEL32.DLL'
    import user32,MessageBoxA,'MessageBoxA'
    import kernel32,ExitProcess,'ExitProcess'
end data
于 2011-03-08T21:33:09.750 に答える