windows.h — Windows-специфичный заголовочный файл языка программирования С, в котором объявляются функции, предоставляющие интерфейс доступа к Windows API. В случае, если в файле используются и другие заголовочные файлы, связанные с Windows API, windows.h должен быть первым.
Дочерние заголовочные файлы excpt.h — обработка исключений stdarg.h — функции с сигнатурами аргументов переменной длины (стандартный заголовочный файл C) windef.h — различные макросы и типы winnt.h — различные макросы и типы для Windows NT basetsd.h — различные типы guiddef.h — тип GUID ctype.h — символьные типы (стандартный заголовочный файл C) string.h — строчные типы и их буферы (стандартный заголовочный файл C) winbase.h — kernel32.dll, advapi32.dll: функции ядра winerror.h — коды ошибок для Windows wingdi.h — GDI winuser.h — user32.dll winnls.h — локализация wincon.h — консольные службы winver.h — информация о версии winreg.h — реестр Windows winnetwk.h — сетевые службы winsvc.h — диспетчер управления службами imm.hhh — IME (редактор методов ввода)
Дополнительные заголовки cderr.h — CommDlgExtendedError коды ошибок функций commdlg.h — Common Dialog Boxes dde.h — DDE ddeml.h — библиотека управления DDE dlgs.h — набор констант для Common Dialog Boxes lzexpand.h — алгоритм сжатия LZ77 mmsystem.h — Windows Multimedia nb30.h — NetBIOS rpc.h — удалённый вызов процедур shellapi.h — API wincrypt.h — криптографическое API winperf.h — измерение производительности winresrc.h — ресурсы winsock.h — Winsock (сокеты Windows), версия 1.1 winspool.h — управление очередью печати winbgim.h — стандартная графическая библиотека
OLE и COM ole2.h — OLE objbase.h — COM oleauto.h — OLE Automation olectlid.h — различные определения для GUID
Пример использования В данном примере рассматривается создание нового окна.
#include <windows.h>
LPSTR szClassName = "MyClass"; HINSTANCE hInstance; LRESULT __stdcall MyWndProc(HWND, UINT, WPARAM, LPARAM);
int __stdcall WinMain(HINSTANCE hInst, HINSTANCE hPrevInstance, LPSTR szCmdLine, int iCmdShow) { WNDCLASS wnd; MSG msg; HWND hwnd;
hInstance = hInst;
wnd.style = CS_HREDRAW | CS_VREDRAW; //объяснение ниже wnd.lpfnWndProc = MyWndProc; wnd.cbClsExtra = 0; wnd.cbWndExtra = 0; wnd.hInstance = hInstance; wnd.hIcon = LoadIcon(NULL, IDI_APPLICATION); //иконка по умолчанию wnd.hCursor = LoadCursor(NULL, IDC_ARROW); //курсор по умолчанию wnd.hbrBackground = (HBRUSH)(COLOR_BACKGROUND+1); wnd.lpszMenuName = NULL; //без меню wnd.lpszClassName = szClassName;
if(!RegisterClass(&wnd)) //зарегистрировать WNDCLASS
MessageBox(NULL, "This Program Requires Windows NT", "Error", MB_OK); return 0;
hwnd = CreateWindow(szClassName, "Window Title", WS_OVERLAPPEDWINDOW, //оформление окна по умолчанию CW_USEDEFAULT, CW_USEDEFAULT, //координаты по умолчанию CW_USEDEFAULT, CW_USEDEFAULT, //ширина и высота по умолчанию NULL, //без родительского окна NULL, //без меню hInstance, NULL); //без параметра ShowWindow(hwnd, iCmdShow); //отрисовать окно на экране UpdateWindow(hwnd); //окно должно правильно обновляться
while(GetMessage(&msg, NULL, 0, 0)) //цикл сообщений
TranslateMessage(&msg); DispatchMessage(&msg);
return msg.wParam;
LRESULT __stdcall MyWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { switch(msg)
case WM_DESTROY: PostQuitMessage(0); return 0;
return DefWindowProc(hwnd, msg, wParam, lParam); }
См. также
Примечания
Ссылки Документация Windows API
Категория:Заголовочные файлы языка Си Категория:Windows API