Проблема с MessageBox

Тема в разделе "WASM.BEGINNERS", создана пользователем jaga, 25 окт 2008.

  1. jaga

    jaga Дмитрий

    Публикаций:
    0
    Регистрация:
    25 окт 2008
    Сообщения:
    33
    Адрес:
    Пермская обл.
    Начал недавно изучать Ассемблер. и у меня появилась вот такой вопрос. как вывести в MessageBox'е две переменные?
     
  2. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    jaga
    Поместить (как - зависит от типа переменных) их в одну строку, а ее вывести.
     
  3. jaga

    jaga Дмитрий

    Публикаций:
    0
    Регистрация:
    25 окт 2008
    Сообщения:
    33
    Адрес:
    Пермская обл.
    А как это сделать не подскажеш? например есть переменные q1 и q2. что с нии делать? там хранятся числа
     
  4. RamMerLabs

    RamMerLabs Well-Known Member

    Публикаций:
    0
    Регистрация:
    11 сен 2006
    Сообщения:
    1.426
    jaga
    копай в направлении апишки wsprintf из user32.dll. она формирует строку.

    ЗЫ: пример где-то ту на васме был
     
  5. jaga

    jaga Дмитрий

    Публикаций:
    0
    Регистрация:
    25 окт 2008
    Сообщения:
    33
    Адрес:
    Пермская обл.
    Спасибо! Щяс поищу.
     
  6. Y_Mur

    Y_Mur Active Member

    Публикаций:
    0
    Регистрация:
    6 сен 2006
    Сообщения:
    2.494
    http://www.wasm.ru/forum/viewtopic.php?pid=264115#p264115
     
  7. shoo

    shoo New Member

    Публикаций:
    0
    Регистрация:
    17 июл 2003
    Сообщения:
    1.537
    Адрес:
    Ukraine
    иногда проще всего вывести одну переменную в виде текста MessageBox-a, а вторую - в виде заголовка.
     
  8. trr

    trr New Member

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    52
    Текстовые можно так сложить:

    Код (Text):
    1. AA db "1234"
    2. BB db "9876"
    3.  
    4. mov esi,offset AA
    5. LEN:
    6. mov al,[esi]
    7. inc esi
    8. or al,al
    9. jne LEN
    10. dec esi
    11. mov ecx,offset BB
    12. COPY:
    13. mov al,[ecx]
    14. inc ecx
    15. or al,al
    16. je FIN
    17. mov [esi],al
    18. inc esi
    19. jmp COPY
    20. FIN:
    21. mov [esi],al
    22.  
    23. invoke MessageBox,0,addr AA,0,0
     
  9. Phantom_84

    Phantom_84 New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2007
    Сообщения:
    820
    Не думаю, что речь шла о переменных, значения которых представляют собой числа в строковой форме. Раз уж написал код объединения строк, может, сразу напишешь и код преобразования строки в число. Хотя не понимаю, чем wsprintf не устраивает. И вообще даже у начинающего программиста должны быть либы к примеру со строковыми функциями, чтобы осуществление примитивной операции каждый раз не превращалось в "творчество".
     
  10. Phantom_84

    Phantom_84 New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2007
    Сообщения:
    820
    ... точнее числа в строку...
     
  11. trr

    trr New Member

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    52
    Смотри:
    http://www.wasm.ru/forum/viewtopic.php?pid=264944
     
  12. Phantom_84

    Phantom_84 New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2007
    Сообщения:
    820
    Я там ничего нового для себя не увижу, а вот автору топика может пригодиться.