Статьи по 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




- Начало -  - Назад -  - Вперед -



Книжный магазин