Посл.ответ |
Сообщение |
Ранг: 4.4 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 08 августа 2006 17:02 · Личное сообщение · #1
Как в асме перечислять параматры например в Visual С++ я пишу так:
MessageBox(0, msgtext, msgname, MB_YESNO | MB_ICONSTOP);
в асме
invoke MessageBox NULL, addr msgtext, addr msgname, MB_YESNO и вот как мне еще дописать MB_ICONSTOP
и еще появляется сообщение с выбором да нет, как в асме обработать например чтоб при ДА выскакивало одно сообщение при нет другое...
| Сообщение посчитали полезным: |
|
Ранг: 253.9 (наставник) Активность: 0.13↘0 Статус: Участник
|
Создано: 08 августа 2006 17:11 · Личное сообщение · #2
| равно +
----- MicroSoft? Is it some kind of a toilet paper? | Сообщение посчитали полезным: |
Ранг: 47.2 (посетитель) Активность: 0.02↘0 Статус: Участник
|
Создано: 08 августа 2006 17:22 · Поправил: MiHaN · Личное сообщение · #3
_dk_ пишет:
как в асме обработать например чтоб при ДА выскакивало одно сообщение при нет другое...
Результат выполнения MessageBox будет возвращён в eax, ну вот и сравнивай eax с константами IDYES и IDNO.
Всё стандартно
| Сообщение посчитали полезным: |
Ранг: 253.9 (наставник) Активность: 0.13↘0 Статус: Участник
|
Создано: 08 августа 2006 17:23 · Личное сообщение · #4
MiHaN
посмотри на цитату, как проглючило
----- MicroSoft? Is it some kind of a toilet paper? | Сообщение посчитали полезным: |
Ранг: 47.2 (посетитель) Активность: 0.02↘0 Статус: Участник
|
Создано: 08 августа 2006 17:51 · Личное сообщение · #5
гг ага, ща поправлю
| Сообщение посчитали полезным: |
Ранг: 52.2 (постоянный) Активность: 0.02↘0 Статус: Участник
|
Создано: 08 августа 2006 18:14 · Личное сообщение · #6
Элементарно!
Например:
invoke MessageBox,0,"Do you want to clear the 'Recent documents' foulder?",\
"Question",MB_YESNO+MB_ICONQUESTION
cmp eax,IDYES
jz Agoo
jmp HEA
Agoo:
invoke SHAddToRecentDocs,2,0
HEA:
...
| Сообщение посчитали полезным: |
Ранг: 271.5 (наставник), 12thx Активность: 0.15↘0 Статус: Участник Packer Reseacher
|
Создано: 08 августа 2006 18:19 · Личное сообщение · #7
Ждал, ждал, когда же кто-нить автора на Исцелиона пошлет, не послали...
----- My love is very cool girl. | Сообщение посчитали полезным: |
Ранг: 4.4 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 08 августа 2006 18:45 · Личное сообщение · #8
Ну спасибо теперь понятно просто надо было узнать, что | == + и что результат помещается в есх...
| Сообщение посчитали полезным: |
Ранг: 4.4 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 08 августа 2006 20:13 · Поправил: _dk_ · Личное сообщение · #9
можно ли как нибудьт текст сообщения указывать не через переменный а напрямую, например:
invoke MessageBox NULL, "sdfdfs", "dfgsdfg", MB_YESNO
| Сообщение посчитали полезным: |
Ранг: 47.2 (посетитель) Активность: 0.02↘0 Статус: Участник
|
Создано: 09 августа 2006 06:45 · Личное сообщение · #10
Можно через макрос:
literal MACRO quoted_text:VARARG
LOCAL local_text
.data
local_text db quoted_text,0
align 4
.code
EXITM <local_text>
ENDM
SADD MACRO quoted_text:VARARG
EXITM <ADDR literal(quoted_text)>
ENDM
invoke MessageBox, NULL, SADD('sdfdfs'), SADD('dfgsdfg'), MB_YESNO
Естественно, это только в MASM.
А вообще-то, возьми любые сорцы на MASM, полистай и все вопросы сами отпадут
| Сообщение посчитали полезным: |
Ранг: 4.4 (гость) Активность: 0.01↘0 Статус: Участник
|
Создано: 09 августа 2006 12:03 · Личное сообщение · #11
ОК спастбо... уже скачал пару уроков Исцелиона...  )
| Сообщение посчитали полезным: |