MASM32 и OpenGL
Это не так сложно, как на самом деле

Библиотеки динамической компоновки

Библиотеки динамической компоновки - DLL - это набор функций, которые могут быть загружены и выполнены по требованию вызывающей программы. К одной и той же библиотеке может обращаться сразу несколько программ. Ниже показан пример простой библиотеки и способ ее подключения к проекту. Для создания библиотеки необходимо три файла: первый содержит код функций, имеет расширение .asm:

.386
.model flat, stdcall
option casemap :none

Список подключаемых файлов

Список подключаемых библиотек

Прототипы функций(не обязательно)

.data

Внутренний блок данных

.code
; #########################################################################
LibMain PROC

ret
LibMain ENDP

; #########################################################################
Функция 1
; #########################################################################
Функция 2
; #########################################################################
Функция 3
; #########################################################################
end LibMain

В приведенном примере функция LibMain фактически пустая. Следующий файл с расширением .def:

LIBRARY имя библиотеки
EXPORTS Функция 1
EXPORTS Функция 2
EXPORTS Функция 3

В третий файл вписываем имя библиотеки и сохраняем его с расширением .bat. Он необходим для компиляции.

@echo off

if exist имя библиотеки.obj del имя библиотеки.obj
if exist имя библиотеки.dll del имя библиотеки.dll

\masm32\bin\ml /c /coff имя библиотеки.asm

\masm32\bin\Link /SUBSYSTEM:WINDOWS /DLL /DEF:имя библиотеки.def имя библиотеки.obj

dir имя библиотеки.*

pause

На следующей странице - практический пример.

©   Короленко М.В., 2011       
Перепечатка материалов возможна только после согласования с автором при условии обязательной ссылки на сайт