masm32, assume reg: поинтер на стекфрейм

Тема в разделе "MASM", создана пользователем letopisec, 30 янв 2012.

  1. letopisec

    letopisec New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2004
    Сообщения:
    228
    можно ли как-то масму сказать чтобы он отмерял переменные от другого регистра?

    что то вроде вот этого:

    option prologue:none
    option epilogue:none
    assume
    WinMain proc hInst :lol: WORD,
    hPrevInst :lol: WORD,
    CmdLine :lol: WORD,
    CmdShow :lol: WORD
    push ecx
    mov ecx, esp
    assume ecx: ptr frame pointer

    invoke MessageBox, NULL, CmdLine, addr msg_cap, MB_OK
    ret
    WinMain endp

    и что бы сгенерировалось:

    push dword ptr [ecx+10h]
    push 0
    push offset caption
    push dword ptr [ebp+10h]
    push dword ptr [ecx+10h]
    push 0
    call MessageBox
     
  2. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Напишите свой макрос для invoke :)
     
  3. kweed

    kweed New Member

    Публикаций:
    0
    Регистрация:
    17 июн 2009
    Сообщения:
    81
    letopisec
    А чем ebp то плох?
    По существу: На сколько я знаю - НЕТ. В конце-концов - нельзя же предусмотреть все, тем-более такие мелочи..