Статьи по Assembler




Main.asm для mycall (ассемблер)


Это основной файл приложения MyCall на ассемблере. Этот файл в текстовом формате вместе со всеми остальными файлами, необходимыми для компиляции приложения MyCall, содержится в zip-файле mycallab.zip (15913 байт). Имеется также Инструкция программиста.

Для получения комментариев щелкaйте по тексту или пользуйтесь групповым управлением:

if(dhtml){document.write("Все комментарии: [+][-]    Открывать: [несколько]");}

;Включаемые файлы:

;@struct.inc - файл структурных макросов

;windows.inc - файл заголовков win32

;main.inc - файл заголовков приложения MyCall

include @struct.inc

include windows.inc

include main.inc

;ГЛАВНАЯ ФУНКЦИЯ ПРИЛОЖЕНИЯ

;///////////////////////////////////////////////////////////// WinMain

.data?

mw_class WNDCLASSEX{}

loop_message MSG{}

win_dim RECT{}

.const

mw_class_name db "MainWindowClass",0

my_message_name db "MyCallMessage",0

.code

WinMain PROC PUBLIC hinst,prev_hinst,command_line,cmd_show

mov dat_buffer,0

mov online,FALSE

;Получение дескриптора экземпляра приложения

;Необходимое действие, так как предполагается компиляция приложения без

;подключения runtime-библиотеки. Подробнее...

invoke GetModuleHandleA,NULL

mov hinst,eax

;Создание главного окна

;Обычное действие, с которого начинаются большинство приложений.

;Единственное отличие в том, что в качестве главного окна в MyCall

;используется окно диалога, описанного в файле ресурсов

;Регистрируется класс главного окна:

mov mw_class.cbSize,sizeof(WNDCLASSEX)

mov mw_class.style,NULL

mov mw_class.lpfnWndProc,offset superprocedure

mov mw_class.cbClsExtra,0

mov mw_class.cbWndExtra,DLGWINDOWEXTRA

mov eax,hinst

mov mw_class.hInstance,eax

invoke LoadIconA,eax,103

mov mw_class.hIcon,eax

mov mw_class.hIconSm,NULL

invoke LoadCursorA,NULL,IDC_ARROW

mov mw_class.hCursor,eax

mov mw_class.hbrBackground,COLOR_WINDOW

mov mw_class.lpszMenuName,NULL

mov mw_class.lpszClassName,offset mw_class_name




Содержание  Назад  Вперед