OSFree Win16API
Материал из Русский WINE
Содержание
Win16 API — справочник функций
Согласно Windows 3.11:
Назначение библиотек
| Библиотека | Модуль | Назначение |
|---|---|---|
| KRNL386.EXE | Ядро Microsoft Windows | Управление памятью, планирование задач, файловый ввод-вывод, загрузка модулей, строковые операции, чтение/запись Profile-конфигурации |
| USER.EXE | Пользовательский интерфейс | Управление окнами, цикл сообщений, меню, диалоги, ввод (клавиатура/мышь), буфер обмена, последовательные порты, сетевые диалоги |
| GDI.EXE | Графический интерфейс устройств | Примитивы рисования, управление контекстами устройств (DC), шрифты, битмапы, палитры, спулинг печати |
| TOOLHELP.DLL | Библиотека отладки/инструментов | Обход глобальной и локальной кучи, списков модулей, задач и классов — для отладчиков и системных обозревателей |
| COMMDLG.DLL | Библиотека общих диалогов | Стандартные диалоги «Открыть/Сохранить файл», «Выбор шрифта», «Выбор цвета», «Найти/Заменить», «Печать» |
| VER.DLL | Библиотека версий | Чтение информации о версии из ресурсов исполняемых файлов; используется установщиками |
KRNL386.EXE
Назначение
Ядро Windows: управление памятью, задачи, файлы, модули, строки, профили, атомы, ресурсы.
Функции
| Функция | Entry | Назначение |
|---|---|---|
| __0000H | 183 | Внутренний сегментный алиас для доступа к параграфу 0000h |
| __0040H | 193 | Внутренний сегментный алиас для доступа к параграфу 0040h (BIOS data area) |
| __A000H | 174 | Внутренний алиас сегмента A000h (EGA/VGA видеопамять) |
| __AHINCR | 114 | Величина приращения для преобразования селектора в линейный адрес |
| __AHSHIFT | 113 | Величина сдвига для преобразования селектора в линейный адрес |
| __B000H | 181 | Алиас сегмента B000h (монохромная видеопамять) |
| __B800H | 182 | Алиас сегмента B800h (цветная текстовая видеопамять) |
| __C000H | 195 | Алиас сегмента C000h (BIOS ROM) |
| __D000H | 179 | Алиас сегмента D000h |
| __E000H | 190 | Алиас сегмента E000h |
| __F000H | 194 | Алиас сегмента F000h (BIOS ROM) |
| __ROMBIOS | 173 | Указатель на сегмент ROM BIOS |
| __WINFLAGS | 178 | Внутренние флаги ядра Windows |
| A20PROC | 165 | Процедура управления линией A20 (доступ к памяти выше 1 МБ) |
| ACCESSRESOURCE | 64 | Получение доступа к ресурсу |
| ADDATOM | 70 | Добавление атома в таблицу атомов |
| ALLOCALIAS | 172 | Создание алиаса селектора |
| ALLOCCSTODSALIAS | 170 | Создание алиаса из кодового сегмента в сегмент данных |
| ALLOCDSTOCSALIAS | 171 | Создание алиаса из сегмента данных в кодовый сегмент |
| ALLOCRESOURCE | 66 | Выделение ресурса |
| ALLOCSELECTOR | 175 | Выделение нового селектора |
| ALLOCSELECTORARRAY | 206 | Выделение массива селекторов |
| BUNNY_351 | 351 | Внутренняя/отладочная функция (заглушка) |
| CALLPROCINSTANCE | 53 | Вызов процедуры экземпляра (instance thunk) |
| CATCH | 55 | Внутренний обработчик исключений |
| CVWBREAK | 205 | Точка останова для CodeView for Windows |
| DEBUGBREAK | 203 | Программная точка останова для отладчика |
| DEBUGDEFINESEGMENT | 314 | Определение отладочного сегмента |
| DEFINEHANDLETABLE | 94 | Определение таблицы дескрипторов |
| DELETEATOM | 71 | Удаление атома из таблицы |
| DELETEPATHNAME | 76 | Удаление пути (файла/каталога) |
| DIAGOUTPUT | 340 | Вывод диагностического сообщения |
| DIAGQUERY | 339 | Запрос диагностической информации |
| DIRECTEDYIELD | 150 | Направленная передача управления конкретной задаче |
| DIRECTRESALLOC | 168 | Прямое выделение ресурса |
| DISABLEDOS | 42 | Запрет вызовов DOS из защищённого режима |
| DISABLEKERNEL | 125 | Запрет вызовов ядра |
| DOS3CALL | 102 | Вызов функции DOS INT 21h |
| DOSIGNAL | 139 | Установка обработчика сигналов DOS |
| EMSCOPY | 160 | Копирование данных через EMS-память |
| ENABLEDOS | 41 | Разрешение вызовов DOS |
| ENABLEKERNEL | 124 | Разрешение вызовов ядра |
| EXITKERNEL | 2 | Завершение работы ядра Windows |
| FATALAPPEXIT | 137 | Аварийное завершение приложения |
| FATALEXIT | 1 | Аварийный выход из Windows |
| FATALEXITHOOK | 318 | Хук, вызываемый при аварийном выходе |
| FILECDR | 130 | Внутренняя функция работы с CD-ROM |
| FINDATOM | 69 | Поиск атома по имени |
| FINDRESOURCE | 60 | Поиск ресурса в модуле |
| FLUSHCACHEDFILEHANDLE | 319 | Сброс кэша файлового дескриптора на диск |
| FREELIBRARY | 96 | Выгрузка библиотеки |
| FREEMODULE | 46 | Выгрузка модуля |
| FREEPROCINSTANCE | 52 | Освобождение экземпляра процедуры |
| FREERESOURCE | 63 | Освобождение ресурса |
| FREESELECTOR | 176 | Освобождение селектора |
| GETAPPCOMPATFLAGS | 354 | Получение флагов совместимости приложения |
| GETATOMHANDLE | 73 | Получение дескриптора атома |
| GETATOMNAME | 72 | Получение имени атома по дескриптору |
| GETCODEHANDLE | 93 | Получение дескриптора кода |
| GETCODEINFO | 104 | Получение информации о кодовом сегменте |
| GETCURRENTPDB | 37 | Получение текущего PDB (Process Data Base) |
| GETCURRENTTASK | 36 | Получение дескриптора текущей задачи |
| GETCURPID | 157 | Получение идентификатора текущего процесса |
| GETDOSENVIRONMENT | 131 | Получение окружения DOS |
| GETDRIVETYPE | 136 | Определение типа диска |
| GETEXEPTR | 133 | Получение указателя на заголовок EXE |
| GETEXEVERSION | 105 | Получение версии EXE-файла |
| GETEXPWINVER | 167 | Получение ожидаемой версии Windows для приложения |
| GETFREEMEMINFO | 316 | Получение информации о свободной памяти |
| GETFREESPACE | 169 | Получение объёма свободного пространства |
| GETHEAPSPACES | 138 | Получение информации о пространстве heap |
| GETINSTANCEDATA | 54 | Получение данных экземпляра |
| GETLASTDISKCHANGE | 98 | Получение времени последней смены диска |
| GETLPERRMODE | 99 | Получение режима обработки ошибок LP |
| GETMODULEFILENAME | 49 | Получение имени файла модуля |
| GETMODULEHANDLE | 47 | Получение дескриптора модуля по имени |
| GETMODULEUSAGE | 48 | Получение счётчика использования модуля |
| GETNUMTASKS | 152 | Получение количества задач |
| GETPRIVATEPROFILEINT | 127 | Чтение целочисленного параметра из приватного INI-файла |
| GETPRIVATEPROFILESTRING | 128 | Чтение строки из приватного INI-файла |
| GETPROCADDRESS | 50 | Получение адреса экспортируемой функции |
| GETPROFILEINT | 57 | Чтение целочисленного параметра из WIN.INI |
| GETPROFILESTRING | 58 | Чтение строки из WIN.INI |
| GETSELECTORBASE | 186 | Получение базового адреса селектора |
| GETSELECTORLIMIT | 188 | Получение границы селектора |
| GETSETKERNELDOSPROC | 311 | Получение/установка обработчика DOS-вызовов ядра |
| GETSYSTEMDIRECTORY | 135 | Получение системного каталога Windows |
| GETTASKQUEUE | 35 | Получение очереди задач |
| GETTASKQUEUEDS | 118 | Получение сегмента данных очереди задач |
| GETTASKQUEUEES | 119 | Получение сегмента очереди задач |
| GETTASKDS | 155 | Получение сегмента данных задачи |
| GETTEMPFILENAME | 97 | Генерация временного имени файла |
| GETTEMPDRIVE | 92 | Получение имени временного диска |
| GETVERSION | 3 | Получение версии Windows |
| GETWINDOWSDIRECTORY | 134 | Получение каталога Windows |
| GETWINDEBUGINFO | 355 | Получение отладочной информации Windows |
| GETWINFLAGS | 132 | Получение флагов Windows |
| GLOBALALLOC | 15 | Выделение глобальной памяти |
| GLOBALCOMPACT | 25 | Уплотнение глобальной памяти |
| GLOBALDOSALLOC | 184 | Выделение глобальной памяти через DOS |
| GLOBALDOSFREE | 185 | Освобождение DOS-памяти |
| GLOBALFIX | 197 | Фиксация глобального блока в памяти |
| GLOBALFLAGS | 22 | Получение флагов глобального блока |
| GLOBALFREE | 17 | Освобождение глобального блока |
| GLOBALFREEALL | 26 | Освобождение всей глобальной памяти задачи |
| GLOBALHANDLE | 21 | Получение дескриптора глобального блока |
| GLOBALHANDLENORIP | 159 | Получение дескриптора без RIP |
| GLOBALLOCK | 18 | Блокировка глобального блока |
| GLOBALLRUOLDEST | 163 | Получение самого старого блока в LRU-списке |
| GLOBALLRUNEWEST | 164 | Получение самого нового блока в LRU-списке |
| GLOBALMASTERHANDLE | 28 | Получение мастер-дескриптора глобального блока |
| GLOBALNOTIFY | 154 | Установка уведомления об изменении глобальной памяти |
| GLOBALPAGELOCK | 191 | Блокировка страницы глобальной памяти |
| GLOBALPAGEUNLOCK | 192 | Разблокировка страницы глобальной памяти |
| GLOBALREALLOC | 16 | Перераспределение глобального блока |
| GLOBALSIZE | 20 | Получение размера глобального блока |
| GLOBALUNFIX | 198 | Снятие фиксации глобального блока |
| GLOBALUNLOCK | 19 | Разблокировка глобального блока |
| GLOBALUNWIRE | 112 | Снятие привязки глобального блока |
| GLOBALWIRE | 111 | Привязка глобального блока |
| HMEMCPY | 348 | Копирование памяти |
| _HREAD | 349 | Чтение из файла по дескриптору |
| _HWRITE | 350 | Запись в файл по дескриптору |
| INITATOMTABLE | 68 | Инициализация таблицы атомов |
| INITLIB | 116 | Инициализация библиотеки |
| INITTASK | 91 | Инициализация задачи |
| INITTASK1 | 141 | Дополнительная инициализация задачи |
| ISBADCODEPTR | 336 | Проверка корректности указателя на код |
| ISBADHUGEREADPTR | 346 | Проверка указателя на огромный блок (чтение) |
| ISBADHUGEWRITEPTR | 347 | Проверка указателя на огромный блок (запись) |
| ISBADREADPTR | 334 | Проверка указателя на чтение |
| ISBADSTRINGPTR | 337 | Проверка указателя на строку |
| ISBADWRITEPTR | 335 | Проверка указателя на запись |
| ISDBCSLEADBYTE | 207 | Проверка, является ли байт ведущим в DBCS |
| ISROMMODULE | 323 | Проверка, является ли модуль ROM-модулем |
| ISROMFILE | 326 | Проверка, является ли файл ROM-файлом |
| ISSHAREDSELECTOR | 345 | Проверка, является ли селектор разделяемым |
| ISTASK | 320 | Проверка, является ли объект задачей |
| ISTASKLOCKED | 122 | Проверка, заблокирована ли задача |
| ISWINOLDAPTASK | 158 | Проверка, является ли задача WinOldAp |
| K403 | 403 | Внутренняя/зарезервированная функция |
| K404 | 404 | Внутренняя/зарезервированная функция |
| K327 | 327 | Внутренняя/зарезервированная функция |
| K329 | 329 | Внутренняя/зарезервированная функция |
| KBDRST | 123 | Сброс драйвера клавиатуры |
| _LCLOSE | 81 | Закрытие файла |
| _LCREAT | 83 | Создание файла |
| LIMITEMSPAGES | 156 | Ограничение страниц EMS |
| _LLSEEK | 84 | Позиционирование в файле |
| LOADLIBRARY | 95 | Загрузка библиотеки |
| LOADMODULE | 45 | Загрузка модуля |
| LOADRESOURCE | 61 | Загрузка ресурса |
| LOCALALLOC | 5 | Выделение локальной памяти |
| LOCALCOMPACT | 13 | Уплотнение локальной памяти |
| LOCALCOUNTFREE | 161 | Подсчёт свободных локальных блоков |
| LOCALFLAGS | 12 | Получение флагов локального блока |
| LOCALFREE | 7 | Освобождение локального блока |
| LOCALHANDLE | 11 | Получение дескриптора локального блока |
| LOCALHANDLEDELTA | 310 | Получение дельты дескриптора |
| LOCALHEAPSIZE | 162 | Получение размера локальной кучи |
| LOCALINIT | 4 | Инициализация локальной кучи |
| LOCALLOCK | 8 | Блокировка локального блока |
| LOCALNOTIFY | 14 | Уведомление об изменении локальной памяти |
| LOCALREALLOC | 6 | Перераспределение локального блока |
| LOCALSHRINK | 121 | Сжатие локального блока |
| LOCALSIZE | 10 | Получение размера локального блока |
| LOCALUNLOCK | 9 | Разблокировка локального блока |
| LOCKCURRENTTASK | 33 | Блокировка текущей задачи |
| LOCKRESOURCE | 62 | Блокировка ресурса |
| LOCKSEGMENT | 23 | Блокировка сегмента |
| LOGERROR | 324 | Запись ошибки в журнал |
| LOGPARAMERROR | 325 | Запись ошибки параметра в журнал |
| LONGPTRADD | 180 | Сложение длинного указателя |
| LSTRCAT | 89 | Конкатенация строк |
| LSTRCPY | 88 | Копирование строки |
| LSTRCPYN | 353 | Копирование строки с ограничением длины |
| LSTRLEN | 90 | Длина строки |
| _LOPEN | 85 | Открытие файла |
| _LREAD | 82 | Чтение из файла |
| _LWRITE | 86 | Запись в файл |
| MAKEPROCINSTANCE | 51 | Создание экземпляра процедуры |
| MEMORYFREED | 126 | Уведомление об освобождении памяти |
| NETBIOSCALL | 103 | Вызов NetBIOS |
| NOHOOKDOSCALL | 101 | Вызов DOS без перехвата |
| OLDYIELD | 117 | Устаревшая функция передачи управления |
| OPENFILE | 74 | Открытие файла |
| OPENPATHNAME | 75 | Открытие пути |
| OUTPUTDEBUGSTRING | 115 | Вывод отладочной строки |
| PATCHCODEHANDLE | 110 | Модификация дескриптора кода |
| POSTEVENT | 31 | Помещение события в очередь |
| PRESTOCHANGOSELECTOR | 177 | Переключение селектора (Presto Change-O) |
| REGISTERPTRACE | 202 | Регистрация трассировки указателей |
| REGISTERWINOLDAPHOOK | 343 | Регистрация хука WinOldAp |
| REPLACEINST | 201 | Замена экземпляра |
| RESERVED1 | 77 | Зарезервировано |
| RESERVED2 | 78 | Зарезервировано |
| RESERVED3 | 79 | Зарезервировано |
| RESERVED4 | 80 | Зарезервировано |
| RESERVED5 | 87 | Зарезервировано |
| SELECTORACCESSRIGHTS | 196 | Получение прав доступа селектора |
| SETERRORMODE | 107 | Установка режима обработки ошибок |
| SETHANDLECOUNT | 199 | Установка счётчика дескрипторов |
| SETPRIORITY | 32 | Установка приоритета задачи |
| SETRESOURCEHANDLER | 67 | Установка обработчика ресурсов |
| SETSELECTORBASE | 187 | Установка базового адреса селектора |
| SETSELECTORLIMIT | 189 | Установка границы селектора |
| SETSIGHANDLER | 140 | Установка обработчика сигналов |
| SETSWAPAREASIZE | 106 | Установка размера области свопинга |
| SETTASKQUEUE | 34 | Установка очереди задач |
| SETTASKSIGNALPROC | 38 | Установка процедуры сигнала задачи |
| SETWINDEBUGINFO | 356 | Установка отладочной информации Windows |
| SIZEOFRESOURCE | 65 | Получение размера ресурса |
| SWAPRECORDING | 204 | Запись информации о свопинге |
| SWITCHSTACKBACK | 109 | Возврат к предыдущему стеку |
| SWITCHSTACKTO | 108 | Переключение на другой стек |
| THHOOK | 332 | Хук таблицы дескрипторов |
| THROW | 56 | Генерация исключения |
| TOOLHELPHOOK | 341 | Хук ToolHelp |
| UNDEFDYNLINK | 120 | Отмена динамического связывания |
| UNLOCKSEGMENT | 24 | Разблокировка сегмента |
| VALIDATECODESEGMENTS | 100 | Проверка кодовых сегментов |
| VALIDATEFREESPACES | 200 | Проверка свободных пространств |
| WAITEVENT | 30 | Ожидание события |
| WINEXEC | 166 | Запуск приложения |
| WINOLDAPCALL | 151 | Вызов WinOldAp |
| WRITEOUTPROFILES | 315 | Запись Profile-файлов на диск |
| WRITEPRIVATEPROFILESTRING | 129 | Запись строки в приватный INI-файл |
| WRITEPROFILESTRING | 59 | Запись строки в WIN.INI |
| YIELD | 29 | Передача управления другим задачам |
USER.EXE
Назначение
Пользовательский интерфейс: окна, сообщения, меню, диалоги, ввод, буфер обмена, COM-порты, сетевые диалоги.
Функции
| Функция | Entry | Назначение |
|---|---|---|
| ADJUSTWINDOWRECT | 102 | Корректировка прямоугольника окна |
| ADJUSTWINDOWRECTEX | 454 | Расширенная корректировка прямоугольника окна |
| ANSILOWER | 432 | Преобразование строки в нижний регистр (ANSI) |
| ANSILOWERBUFF | 438 | Преобразование буфера в нижний регистр |
| ANSINEXT | 472 | Переход к следующему символу ANSI |
| ANSIPREV | 473 | Переход к предыдущему символу ANSI |
| ANSIUPPER | 431 | Преобразование строки в верхний регистр (ANSI) |
| ANSIUPPERBUFF | 437 | Преобразование буфера в верхний регистр |
| ANYPOPUP | 52 | Проверка наличия любого всплывающего окна |
| APPENDMENU | 411 | Добавление пункта в меню |
| ARRANGEICONICWINDOWS | 170 | Упорядочивание свёрнутых окон |
| BEAR11 | 11 | Внутренняя/зарезервированная функция |
| BEAR51 | 51 | Внутренняя/зарезервированная функция |
| BEAR86 | 86 | Внутренняя/зарезервированная функция |
| BEAR182 | 182 | Внутренняя/зарезервированная функция |
| BEAR285 | 285 | Внутренняя/зарезервированная функция |
| BEAR306 | 306 | Внутренняя/зарезервированная функция |
| BEGINPAINT | 39 | Начало отрисовки окна |
| BEGINDEFERWINDOWPOS | 259 | Начало отложенного позиционирования окна |
| BOZOSLIVEHERE | 301 | Внутренняя/отладочная функция |
| BRINGWINDOWTOTOP | 45 | Поднятие окна на передний план |
| BUILDCOMMDCB | 213 | Построение DCB для последовательного порта |
| CALCCHILDSCROLL | 462 | Расчёт прокрутки дочернего окна |
| CALLMSGFILTER | 123 | Вызов фильтра сообщений |
| CALLNEXTHOOKEX | 293 | Вызов следующего хука (расширенный) |
| CALLWINDOWPROC | 122 | Вызов оконной процедуры |
| CASCADECHILDWINDOWS | 198 | Каскадное расположение дочерних окон |
| CHANGECLIPBOARDCHAIN | 149 | Изменение цепочки буфера обмена |
| CHANGEMENU | 153 | Изменение пункта меню |
| CHECKDLGBUTTON | 97 | Установка/снятие флажка кнопки диалога |
| CHECKMENUITEM | 154 | Установка/снятие флажка пункта меню |
| CHECKRADIOBUTTON | 96 | Установка/снятие радиокнопки |
| CHILDWINDOWFROMPOINT | 191 | Получение дочернего окна по точке |
| CLEARCOMMBREAK | 211 | Сброс сигнала BREAK последовательного порта |
| CLIENTTOSCREEN | 28 | Преобразование координат клиента в экранные |
| CLIPCURSOR | 16 | Ограничение курсора областью |
| CLOSECLIPBOARD | 138 | Закрытие буфера обмена |
| CLOSECOMM | 207 | Закрытие последовательного порта |
| CLOSEDRIVER | 253 | Закрытие драйвера |
| CLOSEWINDOW | 43 | Закрытие окна |
| CONTROLPANELINFO | 273 | Информация о панели управления |
| COPYCURSOR | 369 | Копирование курсора |
| COPYICON | 368 | Копирование иконки |
| COPYRECT | 74 | Копирование прямоугольника |
| COUNTCLIPBOARDFORMATS | 143 | Подсчёт форматов буфера обмена |
| CREATECARET | 163 | Создание каретки |
| CREATECURSOR | 406 | Создание курсора |
| CREATECURSORICONINDIRECT | 408 | Косвенное создание курсора/иконки |
| CREATEDIALOG | 89 | Создание диалога |
| CREATEDIALOGINDIRECT | 219 | Косвенное создание диалога |
| CREATEDIALOGINDIRECTPARAM | 242 | Косвенное создание диалога с параметром |
| CREATEDIALOGPARAM | 241 | Создание диалога с параметром |
| CREATEICON | 407 | Создание иконки |
| CREATEMENU | 151 | Создание меню |
| CREATEPOPUPMENU | 415 | Создание всплывающего меню |
| CREATEWINDOW | 41 | Создание окна |
| CREATEWINDOWEX | 452 | Расширенное создание окна |
| DCHOOK | 362 | Хук контекста устройства |
| DEFFRAMEPROC | 445 | Стандартная процедура фрейма MDI |
| DEFDLGPROC | 308 | Стандартная процедура диалога |
| DEFDRIVERPROC | 255 | Стандартная процедура драйвера |
| DEFERWINDOWPOS | 260 | Отложенное позиционирование окна |
| DEFHOOKPROC | 235 | Стандартная процедура хука |
| DEFMDICHILDPROC | 447 | Стандартная процедура дочернего MDI-окна |
| DEFWINDOWPROC | 107 | Стандартная оконная процедура |
| DELETEMENU | 413 | Удаление меню |
| DESTROYCARET | 164 | Уничтожение каретки |
| DESTROYCURSOR | 458 | Уничтожение курсора |
| DESTROYICON | 457 | Уничтожение иконки |
| DESTROYMENU | 152 | Уничтожение меню |
| DESTROYWINDOW | 53 | Уничтожение окна |
| DIALOGBOX | 87 | Создание модального диалога |
| DIALOGBOXINDIRECT | 218 | Косвенное создание модального диалога |
| DIALOGBOXINDIRECTPARAM | 240 | Косвенное создание модального диалога с параметром |
| DIALOGBOXPARAM | 239 | Создание модального диалога с параметром |
| DISABLEOEMLAYER | 4 | Отключение OEM-слоя |
| DISPATCHMESSAGE | 114 | Диспетчеризация сообщения |
| DLGDIRLIST | 100 | Список каталогов в диалоге |
| DLGDIRLISTCOMBOBOX | 195 | Комбинированный список каталогов |
| DLGDIRSELECT | 99 | Выбор каталога |
| DLGDIRSELECTCOMBOBOX | 194 | Выбор каталога из комбинированного списка |
| DLGDIRSELECTCOMBOBOXEX | 423 | Расширенный выбор каталога |
| DLGDIRSELECTEX | 422 | Расширенный выбор каталога |
| DRAGDETECT | 465 | Определение начала перетаскивания |
| DRAGOBJECT | 464 | Перетаскивание объекта |
| DRAWFOCUSRECT | 466 | Отрисовка прямоугольника фокуса |
| DRAWICON | 84 | Отрисовка иконки |
| DRAWMENUBAR | 160 | Отрисовка строки меню |
| DRAWTEXT | 85 | Отрисовка текста |
| DUMPICON | 459 | Дамп иконки |
| EMPTYCLIPBOARD | 139 | Очистка буфера обмена |
| ENABLECOMMNOTIFICATION | 245 | Разрешение уведомлений последовательного порта |
| ENABLEHARDWAREINPUT | 331 | Разрешение аппаратного ввода |
| ENABLEMENUITEM | 155 | Разрешение/запрет пункта меню |
| ENABLEOEMLAYER | 3 | Включение OEM-слоя |
| ENABLESCROLLBAR | 482 | Разрешение полосы прокрутки |
| ENABLEWINDOW | 34 | Разрешение/запрет окна |
| ENDDEFERWINDOWPOS | 261 | Завершение отложенного позиционирования |
| ENDDIALOG | 88 | Завершение диалога |
| ENDMENU | 187 | Завершение меню |
| ENDPAINT | 40 | Завершение отрисовки окна |
| ENUMCHILDWINDOWS | 55 | Перечисление дочерних окон |
| ENUMCLIPBOARDFORMATS | 144 | Перечисление форматов буфера обмена |
| ENUMPROPS | 27 | Перечисление свойств окна |
| ENUMTASKWINDOWS | 225 | Перечисление окон задачи |
| ENUMWINDOWS | 54 | Перечисление окон |
| EQUALRECT | 244 | Сравнение прямоугольников |
| ESCAPECOMMFUNCTION | 214 | Выполнение escape-функции последовательного порта |
| EXCLUDEUPDATERGN | 238 | Исключение области из области обновления |
| EXITWINDOWS | 7 | Выход из Windows |
| EXITWINDOWSEXEC | 246 | Выход из Windows с запуском программы |
| FILLRECT | 81 | Заливка прямоугольника |
| FILLWINDOW | 324 | Заливка окна |
| FINALUSERINIT | 400 | Финальная инициализация USER |
| FINDWINDOW | 50 | Поиск окна |
| FLASHWINDOW | 105 | Мигание окна |
| FLUSHCOMM | 215 | Сброс буфера последовательного порта |
| FRAMERECT | 83 | Отрисовка рамки прямоугольника |
| GETACTIVEWINDOW | 60 | Получение активного окна |
| GETASYNCKEYSTATE | 249 | Асинхронное получение состояния клавиши |
| GETCAPTURE | 236 | Получение окна, захватившего мышь |
| GETCARETBLINKTIME | 169 | Получение времени мигания каретки |
| GETCARETPOS | 183 | Получение позиции каретки |
| GETCLASSINFO | 404 | Получение информации о классе |
| GETCLASSLONG | 131 | Получение длинного параметра класса |
| GETCLASSNAME | 58 | Получение имени класса |
| GETCLASSWORD | 129 | Получение слова класса |
| GETCLIENTRECT | 33 | Получение прямоугольника клиентской области |
| GETCLIPBOARDDATA | 142 | Получение данных из буфера обмена |
| GETCLIPBOARDFORMATNAME | 146 | Получение имени формата буфера обмена |
| GETCLIPBOARDOWNER | 140 | Получение владельца буфера обмена |
| GETCLIPBOARDVIEWER | 148 | Получение просмотрщика буфера обмена |
| GETCLIPCURSOR | 309 | Получение курсора буфера обмена |
| GETCOMMERROR | 203 | Получение ошибки последовательного порта |
| GETCOMMEVENTMASK | 209 | Получение маски событий порта |
| GETCOMMSTATE | 202 | Получение состояния порта |
| GETCONTROLBRUSH | 326 | Получение кисти элемента управления |
| GETCURSOR | 247 | Получение курсора |
| GETCURSORPOS | 17 | Получение позиции курсора |
| GETCURRENTTIME | 15 | Получение текущего времени |
| GETDC | 66 | Получение контекста устройства |
| GETDCEX | 359 | Расширенное получение DC |
| GETDESKTOPHWND | 278 | Получение дескриптора рабочего стола |
| GETDESKTOPWINDOW | 286 | Получение окна рабочего стола |
| GETDIALOGBASEUNITS | 243 | Получение базовых единиц диалога |
| GETDLGCTRLID | 277 | Получение идентификатора элемента управления |
| GETDLGITEM | 91 | Получение дескриптора элемента диалога |
| GETDLGITEMINT | 95 | Получение целого из элемента диалога |
| GETDLGITEMTEXT | 93 | Получение текста элемента диалога |
| GETDOUBLECLICKTIME | 21 | Получение времени двойного щелчка |
| GETDRIVERINFO | 256 | Получение информации о драйвере |
| GETDRIVERMODULEHANDLE | 254 | Получение дескриптора модуля драйвера |
| GETFILEPORTNAME | 343 | Получение имени порта файла |
| GETFOCUS | 23 | Получение окна с фокусом ввода |
| GETFREESYSTEMRESOURCES | 284 | Получение свободных системных ресурсов |
| GETICONID | 455 | Получение идентификатора иконки |
| GETINPUTSTATE | 335 | Получение состояния ввода |
| GETINTERNALICONHEADER | 372 | Получение внутреннего заголовка иконки |
| GETINTERNALWINDOWPOS | 460 | Получение внутренней позиции окна |
| GETKEYBOARDSTATE | 222 | Получение состояния клавиатуры |
| GETKEYSTATE | 106 | Получение состояния клавиши |
| GETLASTACTIVEPOPUP | 287 | Получение последнего активного всплывающего окна |
| GETMENU | 157 | Получение меню окна |
| GETMENUCHECKMARKDIMENSIONS | 417 | Получение размеров флажка меню |
| GETMENUITEMCOUNT | 263 | Получение количества пунктов меню |
| GETMENUITEMID | 264 | Получение идентификатора пункта меню |
| GETMENUSTATE | 250 | Получение состояния меню |
| GETMENUSTRING | 161 | Получение строки меню |
| GETMESSAGE | 108 | Получение сообщения из очереди |
| GETMESSAGE2 | 323 | Альтернативное получение сообщения |
| GETMESSAGEEXTRAINFO | 288 | Получение дополнительной информации сообщения |
| GETMESSAGEPOS | 119 | Получение позиции сообщения |
| GETMESSAGETIME | 120 | Получение времени сообщения |
| GETMOUSEEVENTPROC | 337 | Получение процедуры обработки мыши |
| GETNEXTDLGGROUPITEM | 227 | Получение следующего элемента группы диалога |
| GETNEXTDLGTABITEM | 228 | Получение следующего элемента Tab-порядка |
| GETNEXTDRIVER | 257 | Получение следующего драйвера |
| GETNEXTQUEUEWINDOW | 274 | Получение следующего окна очереди |
| GETNEXTWINDOW | 230 | Получение следующего окна |
| GETOPENCLIPBOARDWINDOW | 248 | Получение окна, открывшего буфер обмена |
| GETPARENT | 46 | Получение родительского окна |
| GETPRIORITYCLIPBOARDFORMAT | 402 | Получение приоритетного формата буфера обмена |
| GETPROP | 25 | Получение свойства окна |
| GETQUEUESTATUS | 334 | Получение состояния очереди |
| GETSCROLLPOS | 63 | Получение позиции прокрутки |
| GETSCROLLRANGE | 65 | Получение диапазона прокрутки |
| GETSUBMENU | 159 | Получение подменю |
| GETSYSCOLOR | 180 | Получение системного цвета |
| GETSYSMODALWINDOW | 189 | Получение системного модального окна |
| GETSYSTEMMENU | 156 | Получение системного меню |
| GETSYSTEMMETRICS | 179 | Получение системных метрик |
| GETSYSTEMDEBUGSTATE | 231 | Получение состояния отладки системы |
| GETTABBEDTEXTEXTENT | 197 | Получение размера текста с табуляцией |
| GETTICKCOUNT | 13 | Получение счётчика тиков |
| GETTIMERRESOLUTION | 14 | Получение разрешения таймера |
| GETTOPWINDOW | 229 | Получение верхнего окна |
| GETUPDATERECT | 190 | Получение прямоугольника обновления |
| GETUPDATERGN | 237 | Получение области обновления |
| GETUSERLOCALOBJTYPE | 480 | Получение типа локального объекта USER |
| GETWINDOW | 262 | Получение окна по дескриптору |
| GETWINDOWDC | 67 | Получение DC окна |
| GETWINDOWLONG | 135 | Получение длинного параметра окна |
| GETWINDOWPLACEMENT | 370 | Получение размещения окна |
| GETWINDOWRECT | 32 | Получение прямоугольника окна |
| GETWINDOWTASK | 224 | Получение задачи окна |
| GETWINDOWTEXT | 36 | Получение текста окна |
| GETWINDOWTEXTLENGTH | 38 | Получение длины текста окна |
| GETWINDOWWORD | 133 | Получение слова окна |
| GLOBALADDATOM | 268 | Добавление глобального атома |
| GLOBALDELETEATOM | 269 | Удаление глобального атома |
| GLOBALFINDATOM | 270 | Поиск глобального атома |
| GLOBALGETATOMNAME | 271 | Получение имени глобального атома |
| GRAYSTRING | 185 | Отрисовка строки в disabled-состоянии |
| HARDWARE_EVENT | 481 | Обработка аппаратного события |
| HIDECARET | 166 | Скрытие каретки |
| HILITEMENUITEM | 162 | Подсветка пункта меню |
| INFLATERECT | 78 | Расширение прямоугольника |
| INITAPP | 5 | Инициализация приложения |
| INSENDMESSAGE | 192 | Внутренняя отправка сообщения |
| INSERTMENU | 410 | Вставка пункта меню |
| INTERSECTRECT | 79 | Пересечение прямоугольников |
| INVALIDATERECT | 125 | Инвалидация прямоугольника |
| INVALIDATERGN | 126 | Инвалидация области |
| INVERTRECT | 82 | Инверсия прямоугольника |
| ISCHARALPHA | 433 | Проверка, является ли символ буквой |
| ISCHARALPHANUMERIC | 434 | Проверка, является ли символ буквой или цифрой |
| ISCHARLOWER | 436 | Проверка, является ли символ строчной буквой |
| ISCHARUPPER | 435 | Проверка, является ли символ заглавной буквой |
| ISCHILD | 48 | Проверка, является ли окно дочерним |
| ISCLIPBOARDFORMATAVAILABLE | 193 | Проверка доступности формата буфера обмена |
| ISDIALOGMESSAGE | 90 | Проверка, является ли сообщение сообщением диалога |
| ISDLGBUTTONCHECKED | 98 | Проверка, установлен ли флажок кнопки |
| ISICONIC | 31 | Проверка, свёрнуто ли окно |
| ISMENU | 358 | Проверка, является ли дескриптор меню |
| ISRECTEMPTY | 75 | Проверка, пуст ли прямоугольник |
| ISUSERIDLE | 333 | Проверка простоя пользователя |
| ISWINDOW | 47 | Проверка, является ли дескриптор окном |
| ISWINDOWENABLED | 35 | Проверка, разрешено ли окно |
| ISWINDOWVISIBLE | 49 | Проверка, видимо ли окно |
| ISZOOMED | 272 | Проверка, развёрнуто ли окно |
| KEYBD_EVENT | 289 | Генерация события клавиатуры |
| KILLTIMER | 12 | Уничтожение таймера |
| LOADACCELERATORS | 177 | Загрузка таблицы акселераторов |
| LOADBITMAP | 175 | Загрузка битмапа |
| LOADCURSOR | 173 | Загрузка курсора |
| LOADCURSORICONHANDLER | 336 | Загрузка обработчика курсоров/иконок |
| LOADDIBCURSORHANDLER | 356 | Загрузка DIB-обработчика курсоров |
| LOADDIBICONHANDLER | 357 | Загрузка DIB-обработчика иконок |
| LOADICON | 174 | Загрузка иконки |
| LOADICONHANDLER | 456 | Загрузка обработчика иконок |
| LOADMENU | 150 | Загрузка меню |
| LOADMENUINDIRECT | 220 | Косвенная загрузка меню |
| LOADSTRING | 176 | Загрузка строки из ресурсов |
| LOCKINPUT | 226 | Блокировка ввода |
| LOCKMYTASK | 276 | Блокировка текущей задачи |
| LOCKWINDOWUPDATE | 294 | Блокировка обновления окна |
| LOOKUPMENUHANDLE | 217 | Поиск дескриптора меню |
| LSTRCMP | 430 | Сравнение строк |
| LSTRCMPI | 471 | Сравнение строк без учёта регистра |
| MAPDIALOGRECT | 103 | Преобразование прямоугольника диалога |
| MAPWINDOWPOINTS | 258 | Преобразование точек окна |
| MESSAGEBEEP | 104 | Звуковой сигнал |
| MESSAGEBOX | 1 | Вывод диалогового окна сообщения |
| MODIFYMENU | 414 | Модификация меню |
| MOUSE_EVENT | 299 | Генерация события мыши |
| MOVEWINDOW | 56 | Перемещение окна |
| OFFSETRECT | 77 | Смещение прямоугольника |
| OLDEXITWINDOWS | 2 | Устаревший выход из Windows |
| OLDSETDESKPATTERN | 279 | Устаревшая установка узора рабочего стола |
| OPENCLIPBOARD | 137 | Открытие буфера обмена |
| OPENCOMM | 200 | Открытие последовательного порта |
| OPENDRIVER | 252 | Открытие драйвера |
| OPENICON | 44 | Открытие иконки |
| PAINTRECT | 325 | Отрисовка прямоугольника |
| PEEKMESSAGE | 109 | Просмотр сообщения без удаления из очереди |
| POSTAPPMESSAGE | 116 | Помещение сообщения в очередь приложения |
| POSTMESSAGE | 110 | Асинхронная отправка сообщения |
| POSTQUITMESSAGE | 6 | Помещение сообщения о завершении |
| PTINRECT | 76 | Проверка, находится ли точка в прямоугольнике |
| QUERYSENDMESSAGE | 184 | Синхронная отправка сообщения с ожиданием |
| READCOMM | 204 | Чтение из последовательного порта |
| REALIZEPALETTE | 283 | Реализация палитры |
| REDRAWWINDOW | 290 | Перерисовка окна |
| REGISTERCLASS | 57 | Регистрация класса окна |
| REGISTERCLIPBOARDFORMAT | 145 | Регистрация формата буфера обмена |
| REGISTERWINDOWMESSAGE | 118 | Регистрация пользовательского сообщения |
| RELEASECAPTURE | 19 | Освобождение захвата мыши |
| RELEASEDC | 68 | Освобождение контекста устройства |
| REMOVEMENU | 412 | Удаление пункта меню |
| REMOVEPROP | 24 | Удаление свойства окна |
| REPAINTSCREEN | 275 | Перерисовка экрана |
| REPLYMESSAGE | 115 | Ответ на сообщение |
| SCREENTOCLIENT | 29 | Преобразование экранных координат в клиентские |
| SCROLLCHILDREN | 463 | Прокрутка дочерних окон |
| SCROLLDC | 221 | Прокрутка контекста устройства |
| SCROLLWINDOW | 61 | Прокрутка окна |
| SCROLLWINDOWEX | 319 | Расширенная прокрутка окна |
| SELECTPALETTE | 282 | Выбор палитры |
| SENDDLGITEMMESSAGE | 101 | Отправка сообщения элементу диалога |
| SENDDRIVERMESSAGE | 251 | Отправка сообщения драйверу |
| SENDMESSAGE | 111 | Синхронная отправка сообщения |
| SETACTIVEWINDOW | 59 | Установка активного окна |
| SETCAPTURE | 18 | Захват мыши |
| SETCARETBLINKTIME | 168 | Установка времени мигания каретки |
| SETCARETPOS | 165 | Установка позиции каретки |
| SETCLASSLONG | 132 | Установка длинного параметра класса |
| SETCLASSWORD | 130 | Установка слова класса |
| SETCLIPBOARDDATA | 141 | Запись данных в буфер обмена |
| SETCLIPBOARDVIEWER | 147 | Установка просмотрщика буфера обмена |
| SETCOMMBREAK | 210 | Установка сигнала BREAK |
| SETCOMMEVENTMASK | 208 | Установка маски событий порта |
| SETCOMMSTATE | 201 | Установка состояния порта |
| SETCURSOR | 69 | Установка курсора |
| SETCURSORPOS | 70 | Установка позиции курсора |
| SETDLGITEMINT | 94 | Установка целого в элемент диалога |
| SETDLGITEMTEXT | 92 | Установка текста элемента диалога |
| SETDOUBLECLICKTIME | 20 | Установка времени двойного щелчка |
| SETEVENTHOOK | 321 | Установка хука событий |
| SETFOCUS | 22 | Установка фокуса ввода |
| SETHANDLECOUNT | 199 | Установка счётчика дескрипторов |
| SETINTERNALWINDOWPOS | 461 | Установка внутренней позиции окна |
| SETKEYBOARDSTATE | 223 | Установка состояния клавиатуры |
| SETMENU | 158 | Установка меню окна |
| SETMENUITEMBITMAPS | 418 | Установка битмапов пунктов меню |
| SETMESSAGEQUEUE | 266 | Установка очереди сообщений |
| SETPARENT | 233 | Установка родительского окна |
| SETPROP | 26 | Установка свойства окна |
| SETRECT | 72 | Установка прямоугольника |
| SETRECTEMPTY | 73 | Установка пустого прямоугольника |
| SETSCROLLPOS | 62 | Установка позиции прокрутки |
| SETSCROLLRANGE | 64 | Установка диапазона прокрутки |
| SETSYSCOLORS | 181 | Установка системных цветов |
| SETSYSTEMMENU | 280 | Установка системного меню |
| SETSYSMODALWINDOW | 188 | Установка системного модального окна |
| SETTIMER | 10 | Установка таймера |
| SETWINDOWLONG | 136 | Установка длинного параметра окна |
| SETWINDOWPLACEMENT | 371 | Установка размещения окна |
| SETWINDOWPOS | 232 | Установка позиции окна |
| SETWINDOWSHOOK | 121 | Установка хука окна |
| SETWINDOWSHOOKEX | 291 | Расширенная установка хука окна |
| SETWINDOWTEXT | 37 | Установка текста окна |
| SETWINDOWWORD | 134 | Установка слова окна |
| SHOWCARET | 167 | Показ каретки |
| SHOWCURSOR | 71 | Показ курсора |
| SHOWOWNEDPOPUPS | 265 | Показ owned-всплывающих окон |
| SHOWSCROLLBAR | 267 | Показ полосы прокрутки |
| SHOWWINDOW | 42 | Показ/скрытие окна |
| SIGNALPROC | 314 | Процедура обработки сигнала |
| STRINGFUNC | 470 | Внутренняя строковая функция |
| SUBTRACTRECT | 373 | Вычитание прямоугольников |
| SWAPMOUSEBUTTON | 186 | Обмен кнопок мыши |
| SWITCHTOTHISWINDOW | 172 | Переключение на это окно |
| SYSERRORBOX | 320 | Системное окно ошибки |
| SYSTEMPARAMETERSINFO | 483 | Получение системных параметров |
| TABBEDTEXTOUT | 196 | Вывод текста с табуляцией |
| TILECHILDWINDOWS | 199 | Мозаичное расположение дочерних окон |
| TRACKPOPUPMENU | 416 | Отслеживание всплывающего меню |
| TRANSLATEACCELERATOR | 178 | Трансляция акселератора |
| TRANSLATEMDISYSACCEL | 451 | Трансляция системных акселераторов MDI |
| TRANSLATEMESSAGE | 113 | Трансляция сообщения |
| TRANSMITCOMMCHAR | 206 | Передача символа в порт |
| UNGETCOMMCHAR | 212 | Возврат символа в буфер порта |
| UNHOOKWINDOWSHOOK | 234 | Снятие хука окна |
| UNHOOKWINDOWSHOOKEX | 292 | Расширенное снятие хука окна |
| UNIONRECT | 80 | Объединение прямоугольников |
| UNREGISTERCLASS | 403 | Отмена регистрации класса |
| UPDATEWINDOW | 124 | Обновление окна |
| USERSEEUSERDO | 216 | Внутренняя функция USER |
| USERYIELD | 332 | Передача управления в USER |
| VALIDATERECT | 127 | Валидация прямоугольника |
| VALIDATERGN | 128 | Валидация области |
| WAITMESSAGE | 112 | Ожидание сообщения |
| WINHELP | 171 | Вызов WinHelp |
| WINOLDAPPHACKOMATIC | 322 | Внутренний хак WinOldAp |
| WNETABORTJOB | 503 | Прерывание задания сети |
| WNETADDCONNECTION | 517 | Добавление сетевого подключения |
| WNETBROWSEDIALOG | 515 | Диалог обзора сети |
| WNETCANCELCONNECTION | 518 | Отмена сетевого подключения |
| WNETCANCELJOB | 506 | Отмена сетевого задания |
| WNETCLOSEJOB | 502 | Закрытие сетевого задания |
| WNETCONNECTDIALOG | 525 | Диалог подключения к сети |
| WNETCONNECTIONDIALOG | 527 | Диалог сетевого соединения |
| WNETDEVICEMODE | 514 | Режим сетевого устройства |
| WNETDIRECTORYNOTIFY | 531 | Уведомление о каталоге сети |
| WNETDISABLE | 522 | Отключение сети |
| WNETDISCONNECTDIALOG | 526 | Диалог отключения от сети |
| WNETENABLE | 521 | Включение сети |
| WNETERRORTEXT | 499 | Текст сетевой ошибки |
| WNETGETCAPS | 513 | Получение возможностей сети |
| WNETGETCONNECTION | 512 | Получение сетевого подключения |
| WNETGETDIRECTORYTYPE | 530 | Получение типа сетевого каталога |
| WNETGETERROR | 519 | Получение сетевой ошибки |
| WNETGETERRORTEXT | 520 | Получение текста сетевой ошибки |
| WNETGETPROPERTYTEXT | 532 | Получение текста свойства сети |
| WNETGETUSER | 516 | Получение имени пользователя сети |
| WNETLOCKQUEUEDATA | 510 | Блокировка данных очереди сети |
| WNETOPENJOB | 501 | Открытие сетевого задания |
| WNETPROPERTYDIALOG | 529 | Диалог свойств сети |
| WNETRELEASEJOB | 505 | Освобождение сетевого задания |
| WNETRESTORECONNECTION | 523 | Восстановление сетевого подключения |
| WNETSETJOBCOPIES | 507 | Установка копий задания |
| WNETUNLOCKQUEUEDATA | 511 | Разблокировка данных очереди |
| WNETUNWATCHQUEUE | 509 | Прекращение наблюдения за очередью |
| WNETVIEWQUEUEDIALOG | 528 | Диалог просмотра очереди |
| WNETWATCHQUEUE | 508 | Наблюдение за очередью |
| WNETWRITEJOB | 524 | Запись сетевого задания |
| WINDOWFROMPOINT | 30 | Получение окна по точке |
| WRITECOMM | 205 | Запись в последовательный порт |
| WVSPRINTF | 421 | Форматированный вывод (wvsprintf) |
| _WSPRINTF | 420 | Форматированный вывод (wsprintf) |
| _FFFE_FARFRAME | 341 | Внутренний far-frame |
GDI.EXE
Назначение
Графический интерфейс устройств: примитивы рисования, DC, шрифты, битмапы, палитры, печать и спулинг.
Функции
| Функция | Entry | Назначение |
|---|---|---|
| ABORTDOC | 382 | Прерывание задания печати |
| ADDFONTRESOURCE | 119 | Добавление ресурса шрифта |
| ANIMATEPALETTE | 367 | Анимация палитры |
| ARC | 23 | Отрисовка дуги |
| BITBLT | 34 | Копирование битмапа |
| BRUTE | 213 | Внутренняя функция |
| CHORD | 348 | Отрисовка хорды |
| CLOSEJOB | 243 | Закрытие задания печати |
| CLOSEMETAFILE | 126 | Закрытие метафайла |
| COMBINERGN | 47 | Объединение областей |
| CONVERTOUTLINEFONTFILE | 312 | Конвертация файла контурного шрифта |
| COPY | 250 | Копирование (внутренняя) |
| COPYMETAFILE | 151 | Копирование метафайла |
| CREATEBITMAP | 48 | Создание битмапа |
| CREATEBITMAPINDIRECT | 49 | Косвенное создание битмапа |
| CREATEBRUSHINDIRECT | 50 | Косвенное создание кисти |
| CREATECOMPATIBLEDC | 52 | Создание совместимого DC |
| CREATECOMPATIBLEBITMAP | 51 | Создание совместимого битмапа |
| CREATEDC | 53 | Создание контекста устройства |
| CREATEDIBITMAP | 442 | Создание DIB-битмапа |
| CREATEDIBPATTERNBRUSH | 445 | Создание DIB-кисти узора |
| CREATEDISCARDABLEBITMAP | 156 | Создание выгружаемого битмапа |
| CREATEELLIPTICRGN | 54 | Создание эллиптической области |
| CREATEELLIPTICRGNINDIRECT | 55 | Косвенное создание эллиптической области |
| CREATEFONT | 56 | Создание шрифта |
| CREATEFONTINDIRECT | 57 | Косвенное создание шрифта |
| CREATEHATCHBRUSH | 58 | Создание штриховой кисти |
| CREATEIC | 153 | Создание информационного контекста |
| CREATEMETAFILE | 125 | Создание метафайла |
| CREATEPALETTE | 360 | Создание палитры |
| CREATEPATTERNBRUSH | 60 | Создание кисти узора |
| CREATEPEN | 61 | Создание пера |
| CREATEPENINDIRECT | 62 | Косвенное создание пера |
| CREATEPOLYGONRGN | 63 | Создание полигональной области |
| CREATEPOLYPOLYGONRGN | 451 | Создание полиполигональной области |
| CREATEPQ | 230 | Создание очереди печати |
| CREATERECTRGN | 64 | Создание прямоугольной области |
| CREATERECTRGNINDIRECT | 65 | Косвенное создание прямоугольной области |
| CREATEROUNDRECTRGN | 444 | Создание области со скруглёнными углами |
| CREATESCALABLEFONTRESOURCE | 310 | Создание масштабируемого ресурса шрифта |
| CREATESOLIDBRUSH | 66 | Создание сплошной кисти |
| CREATEUSERBITMAP | 407 | Создание пользовательского битмапа |
| CREATEUSERDISCARDABLEBITMAP | 409 | Создание пользовательского выгружаемого битмапа |
| DEATH | 121 | Внутренняя функция завершения |
| DELETEDC | 68 | Удаление DC |
| DELETEJOB | 244 | Удаление задания печати |
| DELETEMETAFILE | 127 | Удаление метафайла |
| DELETEOBJECT | 69 | Удаление графического объекта |
| DELETEPQ | 235 | Удаление очереди печати |
| DELETESPOOLPAGE | 253 | Удаление страницы спулинга |
| DEVICECOLORMATCH | 449 | Согласование цветов устройства |
| DMBITBLT | 201 | BitBlt для драйвера |
| DMCOLORINFO | 202 | Информация о цвете драйвера |
| DMDIBBITS | 217 | DIB-биты драйвера |
| DMENUMDFONTS | 206 | Перечисление шрифтов драйвера |
| DMENUMOBJ | 207 | Перечисление объектов драйвера |
| DMEXTTEXTOUT | 214 | Расширенный вывод текста драйвера |
| DMGETCHARWIDTH | 215 | Получение ширины символа драйвера |
| DMOUTPUT | 208 | Вывод драйвера |
| DMPIXEL | 209 | Отрисовка пикселя драйвера |
| DMREALIZEOBJECT | 210 | Реализация объекта драйвера |
| DMSCANLR | 212 | Сканирование строки драйвера |
| DMSETDIBTODEV | 219 | Установка DIB на устройство |
| DMSTRBLT | 211 | StretchBlt драйвера |
| DMSTRETCHBLT | 216 | StretchBlt драйвера |
| DMSTRETCHDIBITS | 218 | StretchDIBits драйвера |
| DMTRANSPOSE | 220 | Транспонирование драйвера |
| DPTOLP | 67 | Преобразование точек устройства в логические |
| ELLIPSE | 24 | Отрисовка эллипса |
| ENDDOC | 378 | Завершение документа печати |
| ENDPAGE | 380 | Завершение страницы |
| ENDSPOOLPAGE | 247 | Завершение страницы спулинга |
| ENGINEDELETEFONT | 301 | Удаление шрифта движка |
| ENGINEENUMERATEFONT | 300 | Перечисление шрифтов движка |
| ENGINEEXTTEXTOUT | 314 | Расширенный вывод текста движка |
| ENGINEGETCHARWIDTH | 303 | Ширина символа движка |
| ENGINEGETGLYPHBMP | 305 | Получение битмапа глифа |
| ENGINEMAKEFONTDIR | 306 | Создание каталога шрифтов |
| ENGINEREALIZEFONT | 302 | Реализация шрифта движка |
| ENGINESETFONTCONTEXT | 304 | Установка контекста шрифта |
| ENUMFONTFAMILIES | 330 | Перечисление семейств шрифтов |
| ENUMFONTS | 70 | Перечисление шрифтов |
| ENUMMETAFILE | 175 | Перечисление метафайла |
| ENUMOBJECTS | 71 | Перечисление объектов |
| EQUALRGN | 72 | Сравнение областей |
| ESCAPE | 38 | Выполнение escape-функции |
| EXCLUDECLIPRECT | 21 | Исключение прямоугольника из области отсечения |
| EXCLUDEVISRECT | 73 | Исключение видимого прямоугольника |
| EXTFLOODFILL | 372 | Расширенная заливка |
| EXTTEXTOUT | 351 | Расширенный вывод текста |
| EXTRACTPQ | 232 | Извлечение из очереди печати |
| FASTWINDOWFRAME | 400 | Быстрая отрисовка рамки окна |
| FILLRGN | 40 | Заливка области |
| FINALGDIINIT | 405 | Финальная инициализация GDI |
| FIXUPBOGUSPUBLISHERMETAFILE | 464 | Исправление некорректного метафайла |
| FLOODFILL | 25 | Заливка области |
| FRAMERGN | 41 | Отрисовка рамки области |
| FTRAPPING0 | 355 | Внутренняя функция trapping |
| GDIINIT2 | 403 | Инициализация GDI (2) |
| GDIMOVEBITMAP | 401 | Перемещение битмапа |
| GDIREALIZEPALETTE | 362 | Реализация палитры GDI |
| GDISEEGDIDO | 452 | Внутренняя функция GDI |
| GDISELECTPALETTE | 361 | Выбор палитры GDI |
| GDITASKTERMINATION | 460 | Завершение задачи GDI |
| GETASPECTRATIOFILTER | 353 | Получение фильтра соотношения сторон |
| GETASPECTRATIOFILTEREX | 486 | Расширенное получение фильтра |
| GETBITMAPBITS | 74 | Получение битов битмапа |
| GETBITMAPDIMENSION | 162 | Получение размеров битмапа |
| GETBITMAPDIMENSIONEX | 468 | Расширенное получение размеров битмапа |
| GETBKCOLOR | 75 | Получение цвета фона |
| GETBKMODE | 76 | Получение режима фона |
| GETBOUNDSRECT | 194 | Получение ограничивающего прямоугольника |
| GETBRUSHORG | 149 | Получение начала координат кисти |
| GETBRUSHORGEX | 469 | Расширенное получение начала кисти |
| GETCHARABCWIDTHS | 307 | Получение ABC-ширин символов |
| GETCHARWIDTH | 350 | Получение ширины символа |
| GETCLIPBOX | 77 | Получение прямоугольника отсечения |
| GETCLIPRGN | 173 | Получение области отсечения |
| GETCURLOGFONT | 411 | Получение текущего логического шрифта |
| GETCURRENTPOSITION | 78 | Получение текущей позиции |
| GETCURRENTPOSITIONEX | 470 | Расширенное получение текущей позиции |
| GETDCHOOK | 191 | Получение хука DC |
| GETDCORG | 79 | Получение начала координат DC |
| GETDCSTATE | 179 | Получение состояния DC |
| GETDEVICECAPS | 80 | Получение возможностей устройства |
| GETDIBITS | 441 | Получение DIB-битов |
| GETENVIRONMENT | 133 | Получение окружения |
| GETFONTDATA | 311 | Получение данных шрифта |
| GETGLYPHOUTLINE | 309 | Получение контура глифа |
| GETHDCCHARSET | 572 | Получение кодировки HDC |
| GETKERNINGPAIRS | 332 | Получение кернинговых пар |
| GETMAPMODE | 81 | Получение режима отображения |
| GETMETAFILE | 124 | Получение метафайла |
| GETMETAFILEBITS | 159 | Получение битов метафайла |
| GETNEARESTCOLOR | 154 | Получение ближайшего цвета |
| GETNEARESTPALETTEINDEX | 370 | Получение ближайшего индекса палитры |
| GETOBJECT | 82 | Получение информации об объекте |
| GETOUTLINETEXTMETRICS | 308 | Получение метрик контурного текста |
| GETPALETTEENTRIES | 363 | Получение записей палитры |
| GETPHYSICALFONTHANDLE | 352 | Получение физического дескриптора шрифта |
| GETPIXEL | 83 | Получение цвета пикселя |
| GETPOLYFILLMODE | 84 | Получение режима заливки полигонов |
| GETRASTERIZERCAPS | 313 | Получение возможностей растеризатора |
| GETRELABS | 86 | Получение абсолютных координат |
| GETRGNBOX | 134 | Получение ограничивающего прямоугольника области |
| GETROP2 | 85 | Получение режима растровой операции |
| GETSPOOLJOB | 245 | Получение задания спулинга |
| GETSTOCKOBJECT | 87 | Получение стандартного объекта |
| GETSTRETCHBLTMODE | 88 | Получение режима растяжения |
| GETSYSTEMPALETTEENTRIES | 375 | Получение записей системной палитры |
| GETSYSTEMPALETTEUSE | 374 | Получение использования системной палитры |
| GETTEXTALIGN | 345 | Получение выравнивания текста |
| GETTEXTCHARACTEREXTRA | 89 | Получение дополнительных символов текста |
| GETTEXTCOLOR | 90 | Получение цвета текста |
| GETTEXTEXTENT | 91 | Получение размера текста |
| GETTEXTEXTENTPOINT | 471 | Получение размера текста в точке |
| GETTEXTFACE | 92 | Получение гарнитуры текста |
| GETTEXTMETRICS | 93 | Получение метрик текста |
| GETUNICODEMAP | 570 | Получение карты Unicode |
| GETVIEWPORTEXT | 94 | Получение размера видового окна |
| GETVIEWPORTEXTEX | 472 | Расширенное получение размера видового окна |
| GETVIEWPORTORG | 95 | Получение начала видового окна |
| GETVIEWPORTORGEX | 473 | Расширенное получение начала видового окна |
| GETWINDOWEXT | 96 | Получение размера окна |
| GETWINDOWEXTEX | 474 | Расширенное получение размера окна |
| GETWINDOWORG | 97 | Получение начала окна |
| GETWINDOWORGEX | 475 | Расширенное получение начала окна |
| INQUIREVISRGN | 131 | Запрос видимой области |
| INSERTPQ | 233 | Вставка в очередь печати |
| INTERSECTCLIPRECT | 22 | Пересечение с прямоугольником отсечения |
| INTERSECTVISRECT | 98 | Пересечение с видимым прямоугольником |
| INVERTRGN | 42 | Инверсия области |
| ISDCCURRENTPALETTE | 412 | Проверка текущей палитры DC |
| ISDCDIRTY | 169 | Проверка «грязности» DC |
| ISGDIOBJECT | 462 | Проверка, является ли объект GDI-объектом |
| ISVALIDMETAFILE | 410 | Проверка валидности метафайла |
| LINEDDA | 100 | Линейный DDA-алгоритм |
| LINETO | 19 | Отрисовка линии |
| LPTODP | 99 | Преобразование логических точек в точки устройства |
| MAKEOBJECTPRIVATE | 463 | Создание приватного объекта |
| MINPQ | 231 | Минимум очереди печати |
| MOVETO | 20 | Перемещение текущей позиции |
| MOVETOEX | 483 | Расширенное перемещение позиции |
| MULDIV | 128 | Умножение и деление (muldiv) |
| OFFSETCLIPRGN | 32 | Смещение области отсечения |
| OFFSETRGN | 101 | Смещение области |
| OFFSETVIEWPORTORG | 17 | Смещение начала видового окна |
| OFFSETVIEWPORTORGEX | 476 | Расширенное смещение начала видового окна |
| OFFSETVISRGN | 102 | Смещение видимой области |
| OFFSETWINDOWORG | 15 | Смещение начала окна |
| OFFSETWINDOWORGEX | 477 | Расширенное смещение начала окна |
| OPENJOB | 240 | Открытие задания печати |
| PAINTRGN | 43 | Отрисовка области |
| PATBLT | 29 | Копирование узора |
| PIE | 26 | Отрисовка сектора |
| PLAYMETAFILE | 123 | Воспроизведение метафайла |
| PLAYMETAFILERECORD | 176 | Воспроизведение записи метафайла |
| POLYGON | 36 | Отрисовка полигона |
| POLYLINE | 37 | Отрисовка ломаной |
| POLYPOLYGON | 450 | Отрисовка полиполигона |
| PTINREGION | 161 | Проверка точки в области |
| PTVISIBLE | 103 | Проверка видимости точки |
| QUERYABORT | 155 | Запрос прерывания |
| QUERYJOB | 248 | Запрос задания печати |
| REALIZEDEFAULTPALETTE | 365 | Реализация палитры по умолчанию |
| RECTANGLE | 27 | Отрисовка прямоугольника |
| RECTINREGION | 181 | Проверка прямоугольника в области |
| RECTINREGION_EHH | 466 | Внутренняя проверка прямоугольника |
| RECTVISIBLE | 104 | Проверка видимости прямоугольника |
| RECTVISIBLE_EHH | 465 | Внутренняя проверка видимости |
| REMOVEFONTRESOURCE | 136 | Удаление ресурса шрифта |
| RESETDC | 376 | Сброс DC |
| RESIZEPALETTE | 368 | Изменение размера палитры |
| RESTOREDC | 39 | Восстановление DC |
| RESTOREVISRGN | 130 | Восстановление видимой области |
| RESURRECTION | 122 | Внутренняя функция восстановления |
| ROUNDRECT | 28 | Отрисовка прямоугольника со скруглёнными углами |
| SAVEDC | 30 | Сохранение DC |
| SAVEVISRGN | 129 | Сохранение видимой области |
| SCALEVIEWPORTEXT | 18 | Масштабирование видового окна |
| SCALEVIEWPORTEXTEX | 484 | Расширенное масштабирование видового окна |
| SCALEWINDOWEXT | 16 | Масштабирование окна |
| SCALEWINDOWEXTEX | 485 | Расширенное масштабирование окна |
| SCANLR | 135 | Сканирование строки |
| SELECTBITMAP | 195 | Выбор битмапа |
| SELECTCLIPRGN | 44 | Выбор области отсечения |
| SELECTOBJECT | 45 | Выбор графического объекта |
| SELECTVISRGN | 105 | Выбор видимой области |
| SETABORTPROC | 381 | Установка процедуры прерывания |
| SETBITMAPBITS | 106 | Установка битов битмапа |
| SETBITMAPDIMENSION | 163 | Установка размеров битмапа |
| SETBITMAPDIMENSIONEX | 478 | Расширенная установка размеров |
| SETBKCOLOR | 1 | Установка цвета фона |
| SETBKMODE | 2 | Установка режима фона |
| SETBOUNDSRECT | 193 | Установка ограничивающего прямоугольника |
| SETBRUSHORG | 148 | Установка начала кисти |
| SETDCORG | 117 | Установка начала DC |
| SETDCHOOK | 190 | Установка хука DC |
| SETDCSTATE | 180 | Установка состояния DC |
| SETDIBITS | 440 | Установка DIB-битов |
| SETDIBITSTODEVICE | 443 | Установка DIB на устройство |
| SETENVIRONMENT | 132 | Установка окружения |
| SETHOOKFLAGS | 192 | Установка флагов хука |
| SETMAPMODE | 3 | Установка режима отображения |
| SETMAPPERFLAGS | 349 | Установка флагов преобразователя |
| SETMETAFILEBITS | 160 | Установка битов метафайла |
| SETMETAFILEBITSBETTER | 196 | Улучшенная установка битов метафайла |
| SETOBJECTOWNER | 461 | Установка владельца объекта |
| SETPALETTEENTRIES | 364 | Установка записей палитры |
| SETPIXEL | 31 | Установка пикселя |
| SETPOLYFILLMODE | 6 | Установка режима заливки полигонов |
| SETRECTRGN | 172 | Установка прямоугольной области |
| SETRELABS | 5 | Установка абсолютных координат |
| SETROP2 | 4 | Установка растровой операции |
| SETSTRETCHBLTMODE | 7 | Установка режима растяжения |
| SETSYSTEMPALETTEUSE | 373 | Установка использования системной палитры |
| SETTEXTALIGN | 346 | Установка выравнивания текста |
| SETTEXTCHARACTEREXTRA | 8 | Установка дополнительных символов |
| SETTEXTCOLOR | 9 | Установка цвета текста |
| SETTEXTJUSTIFICATION | 10 | Установка выравнивания текста |
| SETVIEWPORTEXT | 14 | Установка размера видового окна |
| SETVIEWPORTEXTEX | 479 | Расширенная установка размера видового окна |
| SETVIEWPORTORG | 13 | Установка начала видового окна |
| SETVIEWPORTORGEX | 480 | Расширенная установка начала видового окна |
| SETWINDOWEXT | 12 | Установка размера окна |
| SETWINDOWEXTEX | 481 | Расширенная установка размера окна |
| SETWINDOWORG | 11 | Установка начала окна |
| SETWINDOWORGEX | 482 | Расширенная установка начала окна |
| SHRINKGDIHEAP | 354 | Сжатие heap GDI |
| SIZEPQ | 234 | Размер очереди печати |
| SPOOLFILE | 254 | Спулинг файла |
| STARTDOC | 377 | Начало документа печати |
| STARTPAGE | 379 | Начало страницы |
| STARTSPOOLPAGE | 246 | Начало страницы спулинга |
| STRETCHBLT | 35 | Растянутое копирование битмапа |
| STRETCHDIBITS | 439 | Растянутое копирование DIB |
| TEXTOUT | 33 | Вывод текста |
| UNICODETOANSI | 467 | Преобразование Unicode в ANSI |
| UNREALIZEOBJECT | 150 | Отмена реализации объекта |
| UPDATECOLORS | 366 | Обновление цветов |
| WRITEDIALOG | 242 | Запись диалога |
| WRITESPOOL | 241 | Запись спулинга |
TOOLHELP.DLL
Назначение
Отладочные и инструментальные функции: обход кучи, модулей, задач, классов, трассировка стека, чтение/запись памяти.
Функции
| Функция | Entry | Назначение |
|---|---|---|
| CLASSFIRST | 69 | Начало перечисления классов |
| CLASSNEXT | 70 | Следующий класс |
| GLOBALENTRYHANDLE | 54 | Получение дескриптора глобальной записи |
| GLOBALENTRYMODULE | 55 | Получение модуля глобальной записи |
| GLOBALFIRST | 51 | Начало перечисления глобальной памяти |
| GLOBALHANDLETOSEL | 50 | Преобразование дескриптора в селектор |
| GLOBALINFO | 53 | Информация о глобальной памяти |
| GLOBALNEXT | 52 | Следующий блок глобальной памяти |
| INTERRUPTREGISTER | 75 | Регистрация обработчика прерываний |
| INTERRUPTUNREGISTER | 76 | Снятие регистрации обработчика |
| LOCALFIRST | 57 | Начало перечисления локальной памяти |
| LOCALINFO | 56 | Информация о локальной памяти |
| LOCALNEXT | 58 | Следующий блок локальной памяти |
| MEMMANINFO | 72 | Информация о менеджере памяти |
| MEMORYREAD | 78 | Чтение памяти |
| MEMORYWRITE | 79 | Запись памяти |
| MODULEFINDHANDLE | 62 | Поиск модуля по дескриптору |
| MODULEFINDNAME | 61 | Поиск модуля по имени |
| MODULEFIRST | 59 | Начало перечисления модулей |
| MODULENEXT | 60 | Следующий модуль |
| NOTIFYREGISTER | 73 | Регистрация уведомления |
| NOTIFYUNREGISTER | 74 | Снятие уведомления |
| STACKTRACECSIPFIRST | 67 | Начало трассировки CS:IP |
| STACKTRACEFIRST | 66 | Начало трассировки стека |
| STACKTRACENEXT | 68 | Следующий кадр стека |
| SYSTEMHEAPINFO | 71 | Информация о системной куче |
| TASKFINDHANDLE | 65 | Поиск задачи по дескриптору |
| TASKFIRST | 63 | Начало перечисления задач |
| TASKGETCSIP | 82 | Получение CS:IP задачи |
| TASKNEXT | 64 | Следующая задача |
| TASKSETCSIP | 81 | Установка CS:IP задачи |
| TASKSWITCH | 83 | Переключение задачи |
| TERMINATEAPP | 77 | Завершение приложения |
| TIMERCOUNT | 80 | Количество таймеров |
COMMDLG.DLL
Назначение
Общие диалоги: открытие/сохранение файла, выбор шрифта/цвета, поиск/замена, печать.
Функции
| Функция | Entry | Назначение |
|---|---|---|
| CHOOSECOLOR | 5 | Диалог выбора цвета |
| CHOOSEFONT | 15 | Диалог выбора шрифта |
| COLORDLGPROC | 8 | Процедура диалога цвета |
| COMMDLGEXTENDEDERROR | 26 | Получение расширенной ошибки |
| DWLBSUBCLASS | 29 | Подкласс списка |
| DWOKSUBCLASS | 31 | Подкласс кнопки OK |
| DWUPARROWHACK | 30 | Внутренний хак стрелки вверх |
| EDITINTEGERONLY | 23 | Редактирование только целых чисел |
| FILEOPENDLGPROC | 6 | Процедура диалога открытия файла |
| FILESAVEDLGPROC | 7 | Процедура диалога сохранения файла |
| FINDTEXT | 11 | Диалог поиска текста |
| FINDTEXTDLGPROC | 13 | Процедура диалога поиска |
| FONTFAMILYENUMPROC | 19 | Процедура перечисления семейств шрифтов |
| FONTSTYLEENUMPROC | 18 | Процедура перечисления стилей шрифтов |
| FORMATCHARDLGPROC | 16 | Процедура диалога форматирования |
| GETFILETITLE | 27 | Получение заголовка файла |
| GETOPENFILENAME | 1 | Диалог открытия файла |
| GETSAVEFILENAME | 2 | Диалог сохранения файла |
| LOADALTERBITMAP | 9 | Загрузка альтернативного битмапа |
| PRINTDLG | 20 | Диалог печати |
| PRINTDLGPROC | 21 | Процедура диалога печати |
| PRINTSETUPDLGPROC | 22 | Процедура диалога настройки печати |
| REPLACETEXT | 12 | Диалог замены текста |
| REPLACETEXTDLGPROC | 14 | Процедура диалога замены |
| WANTARROWS | 25 | Запрос стрелок |
VER.DLL
Назначение
Чтение информации о версии из ресурсов исполняемых файлов; используется установщиками.
Функции
| Функция | Entry | Назначение |
|---|---|---|
| GETFILERESOURCE | 3 | Получение ресурса файла |
| GETFILERESOURCESIZE | 2 | Получение размера ресурса файла |
| GETFILEVERSIONINFO | 7 | Получение информации о версии файла |
| GETFILEVERSIONINFOSIZE | 6 | Получение размера информации о версии |
| VERFINDFILE | 8 | Поиск файла для установки |
| VERINSTALLFILE | 9 | Установка файла с проверкой версии |
| VERLANGUAGENAME | 10 | Получение названия языка |
| VERQUERYVALUE | 11 | Извлечение значения из ресурса версии |
ASCII-схема взаимодействия компонентов
+-----------------------------------------------------------------------+
| ПРИЛОЖЕНИЕ Win16 |
| (EXE, использующее Win16 API) |
+-----------------------------------+-----------------------------------+
|
| вызовы API
v
+-----------------------------------------------------------------------+
| USER.EXE (USER) |
| Окна, сообщения, меню, диалоги, ввод, буфер обмена, COM-порты, |
| сетевые диалоги WNet* |
+------------------+------------------+------------------+--------------+
| | |
| вызовы GDI | вызовы KRNL | вызовы COMMDLG
v v v
+-----------------------+ +-----------------------+ +-----------------+
| GDI.EXE | | KRNL386.EXE | | COMMDLG.DLL |
| Графика, DC, шрифты, | | Память, задачи, | | Общие диалоги |
| битмапы, палитры, | | файлы, модули, | | (Открыть, |
| печать, спулинг | | строки, профили, | | Сохранить, |
| | | атомы, ресурсы | | Шрифт, Цвет, |
| | | | | Печать, |
| | | | | Поиск/Замена) |
+----------+------------+ +-----------+-----------+ +--------+--------+
| | |
| | |
v v v
+-----------------------------------------------------------------------+
| ДРАЙВЕРЫ УСТРОЙСТВ |
| Драйвер дисплея, драйвер принтера, драйвер мыши, драйвер клавиатуры,|
| драйвер сети |
+-----------------------------------------------------------------------+
|
v
+-----------------------------------------------------------------------+
| АППАРАТНОЕ ОБЕСПЕЧЕНИЕ (x86) |
+-----------------------------------------------------------------------+
+-----------------------------------------------------------------------+
| TOOLHELP.DLL |
| Отладка и инструменты: обход кучи, модулей, задач, классов, |
| трассировка стека, чтение/запись памяти |
| Используется отладчиками (CodeView, Turbo Debugger) и утилитами |
+-----------------------------------------------------------------------+
+-----------------------------------------------------------------------+
| VER.DLL |
| Чтение версий из ресурсов EXE/DLL, используется установщиками |
+-----------------------------------------------------------------------+
Пояснение схемы
- Приложение Win16 вызывает функции через импортируемые библиотеки.
- USER.EXE — центральный компонент интерфейса: окна, сообщения, меню, диалоги, ввод, буфер обмена, COM-порты, сетевые диалоги (
WNet*). - GDI.EXE предоставляет графические примитивы, работу с DC, шрифтами, битмапами, палитрами и печатью/спулингом.
- KRNL386.EXE — ядро: память (глобальная/локальная), задачи, файлы, модули, строки, профили, атомы, ресурсы.
- COMMDLG.DLL — общие диалоги: открытие/сохранение файла, выбор шрифта/цвета, поиск/замена, печать.
- VER.DLL — чтение информации о версии из ресурсов, используется установщиками.
- TOOLHELP.DLL — отладочные и инструментальные функции: обход кучи, модулей, задач, классов, трассировка стека, чтение/запись памяти.
- Все вызовы в конечном итоге проходят через драйверы устройств к аппаратному обеспечению.
| OSFree | |
|---|---|
| osFree | Архитектура • План работ • Компоненты • Используемые проекты • Экраны • FreePM • L4 • Скриншоты |
| Загрузчик | [ Последовательность загрузки: поток выполнения • изменение карты памяти ] • Загрузочный сектор • L4Ka::Kickstart |
| Personalities | Win16 personality • MVM/DOS/Win16 personality |
| Разработка | Получение исходных кодов • Сборка • Отладка • Отправка отчетов |
| API | TPCrt • FamilyAPI • Win16API • VIO API • MVM API |
| Сообщество | IRC |
| OS/2 | Presentation Manager • IFS • Петиции к IBM |