entry start
...
start:
<создание окна, инициализация всего остального, цикл сообщений>
invoke ExitProcess,0
Api for Assembly
Долго искал информацию по win api для ассемблера,но практически ничего вменяемого не нашел,только отрывки разных функций,общей картины,которые, не рисуют.Очень нужен совет для начинающего в этом деле.Где можно разжиться литературой по этой теме?FAQ по форуму уже смотрел,ничего полезного не нашел,хотя,может и пропустил.
ты знаешь как вызывать API функции? если да, то это всё что тебе нужно будет по части ассемблера, всё остальное никак не зависит от ассемблера, надо смотреть описание API функции, т.е. MSDN
1)обязательно получать хэндл моей программы и писать все в WinMain,если у меня будет консольное приложение?
2)какие есть ресурсы или литература по API на русском,хоть в сети их достаточно и много,но они не настолько полные как msdn,хотелось бы с подробным описанием,так как еще только начинаю познавать API.
Литература:
С. В. Зубков Assembler для DOS, Windows и UNIX
Пирогов В. Assembler. Учебный курс / Ассемблер для Windows
Виктор Юров Assembler. Учебник для вузов
Магда Ю. С. Ассемблер. Разработка и оптимизация Windows-приложений
для начала хватит. можно взять ИМХО любую
Цитата: Phodopus
WinMain у ассемблера нет. Она есть только у C/C++.
Читал уроки Iczelion'а,там при создании простого окна создается прототип этой функции:
Цитата:
WinMain proto :DWORD,:DWORD,:DWORD,:DWORD
а вней вызываются создание окна,регистрация класса,GetMessage,TranslateMessage и DispatchMessage.Короче все самое основное.
Вызов следующего вида
Цитата:
invoke WinMain, hInstance,NULL,CommandLine, SW_SHOWDEFAULT
Как я понял имя для этой функции может быть любое.После нее идет только ExitProcess.Можно ли обойтись без описания этой функции и писать код просто по порядку.Если нельзя,то почему именно так и куда дописывать все остальные действия,которые к обработке окна никак не относятся.
т.к. функция своя, именовать можно как хочешь. параметры можно какие хочешь и сколько хочешь. можно обойтись совсем без нее вставив вместо
Цитата:
invoke WinMain, hInstance,NULL,CommandLine, SW_SHOWDEFAULT
все что внутри
Цитата:
WinMain proto DWORD,DWORD,DWORD,DWORD
как и с любой другой функцией
функция WinMain это просто условность и используется просто из-за привычки.
Тогда можно просто:
Код:
Нет,это MASM,но спасибо за совет.