Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по курс_Windows.doc
Скачиваний:
11
Добавлен:
22.04.2019
Размер:
1.02 Mб
Скачать

Приложение 1. Справочник api-функций и сообщений Windows.

Таблица 1. Функции API.

 

Назначение функции

Где существенным образом упоминается в [1]

AllocConsole

Создать консоль

Глава 2.2. Консольные приложения.

Arc

Рисовать дугу

Упоминание в Главе 2.1.

BeginPaint

Получить контекст при получении сообщения WM_PAINT

Глава 2.1. См. программу на Рис. 2.1.1.

BitBlt

Скопировать виртуальную прямоугольную область в окно

Глава 2.1 и программа на Рис. 2.1.6.

CallNextHookEx

Продолжить выполнение других фильтров.

Глава 3.7, раздел "Фильтры".

CallWindowProc

Вызвать процедуру окна.

Глава 3.5. Использование подклассов.

CharToOem

Функция перекодировки строки.

Глава 2.2. Программа на Рис. 2.2.3.

CloseHandle

Закрыть объект: файл, консоль, коммуникационный канал, созданный функцией CreateFile, CreatePipe и т.п.

Глава 2.5.

CreateCompatibleBitmap

Создать карту бит, совместимую с заданным контекстом.

Глава 2.1, программа на Рис. 2.1.6.

CreateCompatibleDC

Создать контекст, совместимый с данным окном.

Глава 2.1, программа на Рис. 2.1.6.

CreateDialogParam

Создать немодальное диалоговое окно.

Глава 2.3, программа на Рис. 2.3.5.

CreateEvent

Создать событие.

Глава 3.2. События.

CreateFile

Создать или открыть файл, консоль, коммуникационный канал и т.п.

Глава 2.5.

CreateFileMapping

Создать отображаемый файл.

Глава 3.5, раздел II.

CreateFont

Задать параметры шрифта.

Упоминается в главе 2.1.

CreateFontIndirect

Задать параметры шрифта.

Глава 2.1.

CreateMutex

Создать объект синхронизации "взаимоисключение"

Глава 3.2. Взаимоисключения.

CreatePen

Создать перо.

Глава 2.1, раздел III.

CreatePipe

Создать канал обмена информацией.

Глава 3.5, раздел IV.

CreateProcess

Создать новый процесс.

Глава 3.2. программа 3.2.1.

CreateSemaphore

Создать семафор.

Глава 3.2. Семафоры.

CreateSolidBrush

Определить кисть.

Глава 2.1, программа на Рис. 2.1.1.

CreateThread

Создать поток.

Глава 3.2, программа на Рис. 3.2.2.

CreateWindow

Создать окно.

Глава 1.2. Начала программирования в Windows.

CreateWindowEx

Расширенное создание окна.

Глава 1.2.

DefWindowProc

Вызывается для сообщений, которые не обрабатываются функцией окна.

Глава 1.2, программа на Рис. 1.2.1.

DeleteCriticalSection

Удалить объект "критическая секция".

Глава 3.2. Критические секции.

DeleteDC

Удалить контекст, полученный посредством функций типа CreatePen или CreateDC.

Глава 2.1, программа на Рис. 2.1.6.

DeleteObject

Удалить объект, выбранный функцией SelectObject.

Глава 2.1, программа на Рис. 2.1.3.

DestroyMenu

Удалить меню из памяти.

Глава 2.4, программа на Рис. 2.4.1.

DestroyWindow

Удалить окно из памяти.

Глава 2.3, программа на Рис. 2.3.5.

DeviceIoControl

Вызов сервиса динамического виртуального драйвера.

Глава 4.7. См. раздел "Динамические драйверы".

DialogBox

Создать модальное диалоговое окно.

Глава 2.3.

DialogBoxParam

Создать немодальное диалоговое окно.

Глава 2.3, программа на Рис. 2.3.2.

DispatchMessage

Вернуть управление Windows с передачей сообщения предназначенному окну.

Глава 1.2.

Ellipse

Рисовать эллипс.

Глава 2.1.

EndDialog

Удалить модальное диалоговое окно.

Глава 2.3. См. Рис. 2.3.2.

EndPaint

Удалить контекст, полученный при помощи BeginPaint.

Глава 2.1, программа на Рис. 2.1.1.

EnterCriticalSection

Войти в критическую секцию.

Глава 3.2. Критические секции.

EnumWindows

Пересчитать окна.

Глава 3.5, раздел VIII.

ExitProcess

Закончить данный процесс со всеми подзадачами (потоками).

Глава 1.2.

ExitThread

Выход из потока с указанием кода выхода.

Глава 3.2.

FindFirstFile

Первый поиск файлов в каталоге.

Глава 2.5. Поиск файлов.

FindNextFile

Осуществить последующий поиск в каталоге.

Глава 2.5. Поиск файлов.

FlushViewOfFile

Сохранить отображаемый файл или его часть на диск.

Глава 3.5.

FreeConsole

Освободить консоль.

Глава 2.2. См. программу на Рис. 2.2.3.

FreeLibrary

Выгрузить динамическую библиотеку.

Глава 3.3. См. программу на Рис. 3.3.3.

GetCommandLine

Получить командную строку программы.

Глава 2.2.

GetCursorPos

Получить положение курсора в экранных координатах.

Глава 3.1, программа на Рис. 3.1.3.

GetDC

Получить контекст окна.

Глава 2.1. См. программу на Рис. 2.1.6.

GetDiskFreeSpace

Определяет объем свободного пространства на диске.

Глава 3.4., раздел I.

GetDlgItem

Получить дескриптор управляющего элемента в окне.

Глава 3.1. См. Рис. 3.1.3.

GetDriveType

Получить тип устройства.

Глава 3.4. См. программу на Рис. 3.4.1.

GetLocalTime

Получить местное время.

Глава 3.1. См. программу на Рис. 3.1.2.

GetMenuItemInfo

Получить информацию о выбранном пункте меню.

Глава 2.4. См. программу на Рис. 2.4.1.

GetMessage

Получить очередное сообщение из очереди сообщений данного приложения.

Глава 1.2.

GetModuleHandle

Получить дескриптор приложения.

Глава 1.2, программа на Рис. 1.2.2.

GetProcAddress

Получить адрес процедуры (в динамической библиотеке).

См. главу 3.3.

GetStdHandle

Получить дескриптор консоли.

Глава 2.2.

GetStockObject

Определить дескриптор стандартного объекта.

См. главу 1.4.

GetSystemDirectory

Получить системный каталог.

Глава 3.2.

GetSystemMetrics

Определить значение системных характеристик.

Глава 2.1, программа на Рис. 2.1.6.

GetSystemTime

Получить время по Гринвичу.

Упоминается в главе 3.1.

GetTextExtentPoint32

Определить параметры текста в данном окне.

Глава 2.1, программа на Рис. 2.1.2.

GetWindowRect

Определить размер окна.

Глава 2.1, программа на Рис. 2.1.2.

GetWindowsDirectory

Получить каталог Windows.

Глава 3.2.

GetWindowText

Получить заголовок окна.

Глава 3.5, программа на Рис. 3.5.4.

GetWindowThreadProcessId

Получить идентификатор процесса.

Глава 3.5, программа на Рис. 3.5.4.

GlobalAlloc

Выделить блок памяти.

Глава 3.7. См. раздел III.

GlobalDiscard

Удалить удаляемый блок памяти.

Глава 3.7. См. раздел III.

GlobalFree

Освободить блок памяти.

Глава 3.7. См. раздел III.

GlobalLock

Фиксировать перемещаемый блок памяти.

Глава 3.7. См. раздел III.

GlobalReAlloc

Изменить размер блока памяти.

Глава 3.7. См. раздел III.

GlobalUnlock

Снять фиксацию блока памяти.

Глава 3.7. См. раздел III.

InitializeCriticalSection

Создать объект критическая секция.

Глава 3.2. Программа на Рис. 3.2.3.

InvalidateRect

Перерисовать окно.

Глава 2.1. См. программу на Рис. 2.1.6.

KillTimer

Удалить таймер.

Глава 3.1. См. программу на 3.1.1.

LeaveCriticalSection

Покинуть критическую секцию.

Глава 3.2. Программа на Рис. 3.2.3.

LineTo

Провести линию от текущей точки к заданной.

Глава 2.1. Программа на Рис. 2.1.6.

LoadAccelerators

Загрузить таблицу акселераторов.

 

LoadCursor

Загрузить системный курсор или курсор, определенный в файле ресурсов.

Глава 1.2.2.

LoadIcon

Загрузить системную иконку или иконку, определенную в файле ресурсов.

Глава 1.2.2.

LoadLibrary

Загрузить динамическую библиотеку.

Глава 3.3, программа на Рис. 3.3.3.

LoadMenu

Загрузить меню, которое определено в файле ресурсов.

Глава 2.3. См. программу на Рис. 2.3.3.

LoadString

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

Глава 2.3, программа на Рис. 2.3.2.

lstrcat

Производит конкатенацию двух строк.

Впервые упоминается в главе 2.5.

lstrcpy

Скопировать одну строку в другую.

Впервые упоминается в главе 2.5.

lstrlen

Получить длину строки.

Впервые упоминается в главе 2.5.

MapViewOfFile

Скопировать файл или части файла в память.

Глава 3.5. См. раздел II.

MessageBox

Выдать окно сообщения.

Глава 1.2.

MoveToEx

Сменить текущую точку.

Глава 2.1, программа на Рис. 2.1.6.

MoveWindow

Установить новое положение программа окна.

Глава 3.1, на Рис. 3.1.3.

OpenEvent

Открыть событие.

Глава 3.2. См. раздел События.

OpenSemaphore

Открыть семафор.

Глава 3.2. См. раздел "Семафоры".

PatBlt

Заполнить заданную прямоугольную область.

Глава 2.1, программа на Рис. 2.1.6.

Pie

Рисовать сектор эллипса.

Упоминается в главе 2.1.

PostMessage

Аналогична SendMessage, но сразу возвращает управление.

Глава 3.3, программа на Рис. 3.3.6.

PostQuitMessage

Послать текущему приложению сообщение WM_QUIT.

Глава 1.2.

ReadConsole

Читать из консоли.

Глава 2.2. См. раздел II.

ReadFile

Читать из файла или того, что было создано функцией CreateFile.

Глава 2.5

Rectangle

Рисовать прямоугольник.

Глава 2.1, раздел III.

RegisterClass

Зарегистрировать класс окон.

Глава 1.2.

RegisterHotKey

Зарегистрировать горячую клавишу.

Глава 2.4, программа на Рис. 2.4.2.

ReleaseDC

Удалить контекст, полученный при помощи GetDC

Глава 2.1, программа на Рис. 2.1.6.

ReleaseSemaphore

Освободить семафор

Глава 3.2. См. раздел "Семафоры".

ResetEvent

Сбросить событие

Глава 3.2. См. раздел "События".

ResumeThread

Запустить "спящий" процесс.

Глава 3.2, раздел II.

RoundRect

Рисовать прямоугольник с округленными углами.

Глава 2.1.

RtlMoveMemory

Копировать блок памяти в другой блок. В помощи по API-функциям она называется MoveMemory.

Глава 3.4, программа на Рис. 3.4.4.

SelectObject

Выбрать объект (перо, кисть) в указанном контексте.

Глава 2.1, программа на Рис. 2.1.3.

SendDlgItemMessage

Послать сообщение управляющему элементу окна.

Глава 2.4.

SendMessage

Послать сообщение окну.

Глава 1.3, программа на Рис. 1.3.2.

SetBkColor

Установить цвет фона для вывода текста.

Глава 2.1. Программа на Рис. 2.1.1.

SetConsoleCursorPosition

Установить курсор в заданную позицию в консоли.

Глава 2.2, программа на Рис. 2.2.3.

SetConsoleScreenBufferSize

Установить размер буфера консоли.

Глава 2.2, программа на Рис. 2.2.3.

SetConsoleTextAttribute

Установить цвет текста в консоли.

Глава 2.2, программа на Рис. 2.2.3.

SetConsoleTitle

Установить название окна консоли.

Глава 2.2, программа на Рис. 2.2.3.

SetEvent

Подать сигнал о наступлении события.

Глава 3.2. См. раздел "События".

SetFocus

Установить фокус на заданное окно.

Глава 1.3.

SetLocalTime

Установить время и дату.

Упоминается в главе 3.1.

SetMapMode

Установить соотношение между логическими единицами и пикселями.

Упоминается в главе 2.1.

SetMenu

Назначить новое меню данному окну.

Глава 2.3, программа на Рис. 2.3.3.

SetPixel

Установить заданный цвет пикселя.

Глава 2.1, программа на Рис. 2.1.6.

SetSystemTime

Установить время, используя гринвичские координаты.

Упоминается в главе 3.1.

SetTextColor

Установить цвет текста.

Глава 2.1, программа на Рис. 2.1.1.

SetTimer

Установить таймер.

Глава 3.1.

SetViewportExtEx

Установить область вывода.

Глава 2.1.

SetViewportOrgEx

Установить начало области вывода.

Глава 2.1.

SetWindowLong

Изменить атрибут уже созданного окна.

Глава 3.5. См. раздел III.

SetWindowsHookEx

Установить процедуру-фильтр.

Глава 3.7, программа на Рис. 3.7.5.

Shell_NotifyIcon

Посредством данной функции можно поместить иконку приложения на системную панель.

Глава 3.5. См. программу на Рис. 3.5.1.

SHFileOperation

Осуществляет групповую операцию над файлами и каталогами.

Глава 3.5. См. раздел VI.

SHGetDesktopFolder

Выводит диалоговое окно для выбора каталогов и файлов.

Глава 3.5. См. раздел VI.

ShowWindow

Показать окно, установить статус показа.

Глава 1.2.

Sleep

Вызывает задержку.

Глава 3.2. см. рис. 3.2.2.

TerminateProcess

Уничтожить процесс.

Глава 3.2. См. программу на Рис. 3.2.1.

TerminateThread

Удалить поток.

Глава 3.2. См. программу 3.2.1.

TextOut

Вывести текст в окно.

Глава 2.1.

timeKillEvent

Удалить таймер.

Глава 2.2. См. раздел III.

timeSetEvent

Установить таймер.

Глава 2.2. См. раздел III.

TranslateAccelerator

Транслирует акселераторные клавиши в команду выбора пункта меню.

Глава 2.3. См. раздел III.

TranslateMessage

Транслировать клавиатурные сообщения в ASCII-коды.

Глава 1.2.

UnhookWindowsHookEx

Снять процедуру-фильтр.

Глава 3.6. Программа на Рис. 3.6.5.

UnmapViewOfFile

Сделать указатель на отображаемый файл недействительным.

Глава 3.5. См. раздел II.

UnregisterHotKey

Снять регистрацию горячей клавиши.

Глава 2.4, программа на Рис. 2.4.2.

UpdateWindow

Обновить рабочую область окна.

Глава 1.2.

VirtualAlloc

Зарезервировать блок виртуальной памяти или отобразить на него физическую память.

Глава 3.6. См. раздел III.

VirtualFree

Снять резервирование с блока виртуальной памяти или сделать блок виртуальной памяти неотображенным.

Глава 3.6. См. раздел III.

WaitForSingleObject

Ожидает одно из двух событий: определенный объект сигнализирует о своем состоянии, вышло время ожидания (TimeOut). Работает с такими объектами, как семафор, событие, взаимоисключение, процесс, консольный ввод и др.

Глава 3.2. См. раздел "Семафоры".

WNetAddConnection2

Осуществляет соединение с сетевым ресурсом локальной сети.

Глава 3.4.

WNetCancelConnection2

Отсоединить от ресурса локальной сети.

Глава 3.4.

WNetCloseEnum

Найти все ресурсы локальной сети данного уровня.

Глава 3.4.

WNetGetConnection

Получить информацию о данном соединении.

Глава 3.4.

WNetOpenEnum

Открыть поиск ресурсов в локальной сети.

Глава 3.4.

WriteConsole

Вывод в консоль.

Глава 2.2, программа на Рис. 2.2.1.

wsprintf

Преобразовать последовательность параметров в строку.

Глава 2.2. См. программу на Рис. 2.2.4.

Таблица 2. Сообщение операционной системы Windows.

Сообщение системы

Назначение

Где существенным образом упоминается в [1]

WM_ACTIVATE

Посылается функции окна перед активизацией и деактивизацией этого окна.

Глава 2.4.

WM_ACTIVATEAPP

Посылается функции окна перед активизацией окна другого приложения.

Глава 2.4.

WM_CHAR

Сообщение, возникающее при трансляции сообщения WM_KEYDOWN функцией TranslateMessage.

Главы 1.2, 2.4.

WM_CLOSE

Сообщение, приходящее на процедуру окна при его закрытии. Приходит до WM_DESTROY. Дальнейшее выполнение DefWindowProc, EndDialog или WindowsDestroy и вызывает появление сообщения WM_DESTROY.

Глава 2.3.

WM_COMMAND

Сообщение, приходящее на функцию окна, при наступлении события с управляющим элементом, пунктом меню, а также от акселератора.

Главы 1.3, 2.3.

WM_CREATE

Первое сообщение, приходящее на функцию окна при его создании. Приходит один раз.

См. подробнее Гл. 1.2.

WM_DEADCHAR

Сообщение, возникающее при трансляции сообщения WM_KEYUP функцией TranslateMessage.

Глава 1.2.

WM_DESTROY

Сообщение, приходящее на функцию окна при его уничтожении.

Подробнее см. Гл. 1.2.

WM_GETTEXT

Посылается окну для получения текстовой строки, ассоциированной с данным окном (строка редактирования, заголовок окна и т.д.).

Глава 1.3, см. программу на Рис. 1.3.2.

WM_HOTKEY

Генерируется при нажатии горячей клавиши.

Глава 2.4 и программа на Рис. 2.4.2.

WM_INITDIALOG

Сообщение, приходящее на функцию диалогового окна вместо сообщения WM_CREATE.

Глава 2.3.

WM_KEYDOWN

Сообщение, генерируемое при нажатии клавиши клавиатуры и посылаемое окну, имеющему фокус ввода.

Главы 1.2, 2.3.

WM_KEYUP

Сообщение, генерируемое при отпускании клавиши клавиатуры и посылаемое окну, имеющему фокус ввода.

Главы 1.2, 2.3.

WM_LBUTTONDOWN

Сообщение генерируется при нажатии левой кнопки мыши.

Глава 1.2.

WM_MENUSELECT

Посылается окну, содержащему меню, при выборе пункта меню.

Глава 2.4.

WM_PAINT

Сообщение посылается окну перед его перерисовкой.

Главы 1.2, 1.3.

WM_QUIT

Сообщение, приходящее приложению (не окну) при выполнении функции PostQuitMessage. При получении этого сообщения происходит выход из цикла ожидания и, как следствие, выход из программы.

Глава 1.2. См. комментарий к программе на Рис. 1.2.2.

WM_RBUTTONDOWN

Сообщение генерируется при нажатии правой кнопки мыши.

Глава 1.2, программа на рис. 1.2.2.

WM_SETFOCUS

Сообщение, посылаемое окну, после того, как оно получило фокус.

Глава 1.3, программа на Рис.1.3.2

WM_SETICON

Приложение посылает окну данное сообщение, чтобы ассоциировать с ним новую иконку (значок).

Глава 2.3.

WM_SETTEXT

Сообщение, используемое приложением для посылки текстовой строки окну и интерпретируемое в зависимости от типа окна (обычное окно - заголовок, кнопка — надпись на кнопке, окно редактирования - содержимое этого окна и т.д.).

Глава 1.3, см. программу на Рис. 1.3.2.

WM_SIZE

Посылается функции окна после изменения его размера.

Глава 3.5, см. программу на Рис. 3.5.1.

WM_SYSCHAR

Сообщение, возникающее при трансляции сообщения WM_SYSKEYDOWN функцией TranslateMessage.

Глава 1.2.

WM_SYSCOMMAND

Генерируется при выборе пунктов системного меню или меню окна.

Глава 2.3. См. также Рис. 2.3.4.

WM_SYSDEADCHAR

Сообщение, возникающее при трансляции сообщения WM_SYSKEYUP функцией TranslateMessage.

Глава 1.2.

WM_SYSKEYDOWN

Сообщение аналогично WM_KEYDOWN, но генерируется, когда нажата и удерживается еще и клавиша Alt.

Главы 1.2, 2.3.

WM_SYSKEYUP

Сообщение аналогично WM_SYSKEYDOWN, но генерируется при отпускании клавиши.

Главы 1.2, 2.3.

WM_TIMER

Сообщение, приходящее на функцию окна или специально определенную таймерную процедуру после определения интервала таймера при помощи функции SetTimer.

Глава 3.1 полностью посвящена данному сообщению.

WM_VKEYTOITEM

Сообщение окну приложения, когда нажимается какая-либо клавиша при наличии фокуса на данном списке. Список должен иметь свойство LBS_WANTKEYBOARDINPUT.

Глава 2.4.