Konstante in Assembler



  • Dies folgende funktioniert leider nicht, ich weiss zwar wie ne konstante string deklariert wird nur weiss ich nicht wie ich das anwenden soll. deshalb bitte ich mal um hilfe

    .386
    .model flat, stdcall
    option casemap:none
    	include E:\Asm\masm32\include\windows.inc
    	include E:\Asm\masm32\include\user32.inc
    	includelib E:\Asm\masm32\lib\user32.lib
    	include E:\Asm\masm32\include\kernel32.inc
    	includelib E:\Asm\masm32\lib\kernel32.lib
    .const
    	szText equ <"konstante String">
    	szTitle equ <"Test">
    .code
    start:
    	invoke MessageBox, 0, addr szText, addr szTitle, MB_OK
    	invoke ExitProcess, 0
    end start
    


  • Du deklarierst ein .const-Segment ohne Daten. equ's haben kein Adresse! MessageBox erwartet null-terminierte Strings!

    So wirds gehen:

    .const
        _szText equ <"konstanter String", 0>
        _szTitle equ <"Test", 0>
    
        szText db  _szText
        szTitle db _szTitle
    

    mfg


Anmelden zum Antworten