Поиск по сайту:
Технические основы цифрового спутникового вещания - Статья.
Как составить программу для "DENDY" - Статья.
Компьютерная телефония - Статья.
HMODULE LoadLibrary(LPCTSTR lpFileName);
при попытке использовать данную функцию для загрузки модуля, содержащего ресурсы с идентификаторами, значения которых превышают 0x7FFF; при попытке непосредственной загрузки 16-разрядных библиотек динамической компоновки в 32-разрядные приложения; при загрузке библиотек динамической компоновки с версией подсистемы большей, чем 4.0. при попытке вызывать в функции DllMain версии Unicode для функции Win32.
lpFileName - указатель на заканчивающуюся нулем строку, содержащую имя исполняемого модуля (файла .dll или .exe). Указанное имя является исключительно именем файла и не имеет никакого отношения к имени, указанном в файле определения модуля (.def) в выражении LIBRARY.
текущий каталог; системный каталог Windows, путь в который может быть получен с использованием функции GetSystemDirectory; каталог Windows, путь в который может быть получен с использованием функции GetWindowsDirectory; каталоги, перечисленные в переменной PATH.
int MessageBox(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType);
IDABORT - была нажата кнопка Abort (Прекращение);
IDCANCEL - была нажата кнопка Cancel (Отмена);
IDIGNORE - была нажата кнопка Ignore (Пропуск);
IDNO - была нажата кнопка No (Нет);
IDOK - была нажата кнопка OK;
IDRETRY - была нажата кнопка Retry (Повторение);
IDYES - была нажата кнопка Yes (Да).
hWnd - определяет окно, являющееся собственником создаваемого окна сообщения. Если этот аргумент имеет значение NULL, то создаваемое окно сообщения не имеет собственника.
lpText - указатель на текстовую строку, завершающуюся нулевым символом, содержащую выводимое сообщение.
lpCaption - указатель на текстовую строку, завершающуюся нулевым символом, используемую в качестве заголовка диалогового окна. Если этот аргумент имеет значение NULL, то создаваемое окно содержит стандартный заголовок Error (Ошибка).
uType - определяет комбинацию битовых флагов, определяющих содержимое и поведение диалогового окна. Этот аргумент может представлять собой комбинацию флагов из приведенных ниже групп (не более одного из каждой группы).
Флаги, определяющие состав кнопок окна сообщения:
MB_ABORTRETRYIGNORE - окно сообщения содержит три кнопки: Abort (Прекращение), Retry (Повторение) и Ignore (Пропуск);
MB_OK - окно сообщения содержит одну кнопку OK. Это установка по умолчанию;
MB_OKCANCEL - окно сообщения содержит две кнопки: OK и Cancel (Отмена).
MB_RETRYCANCEL - окно сообщения содержит две кнопки: Retry (Повторение) и Cancel (Отмена);
MB_YESNO - окно сообщения содержит две кнопки: Yes (Да) и No (Нет);
MB_YESNOCANCEL - окно сообщения содержит три кнопки: Yes (Да), No (Нет) и Cancel (Отмена).
Флаги, определяющие значок, выводимый в окне сообщения:
MB_ICONEXCLAMATION, MB_ICONWARNING - в окне сообщения появляется восклицательный знак;
MB_ICONINFORMATION, MB_ICONASTERISK - в окне сообщения появляется прописная буква i, помещенная в кружок;
MB_ICONQUESTION - в окне сообщения появляется вопросительный знак;
MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND - в окне сообщения появляется сигнал остановки.
Флаги, задающие кнопку, используемую по умолчанию.
MB_DEFBUTTON1 - по умолчанию используется первая кнопка. Если в данном аргументе не установлен флаг этой группы, то кнопкой по умолчанию является первая кнопка;
MB_DEFBUTTON2 - по умолчанию используется вторая кнопка;
MB_DEFBUTTON3 - по умолчанию используется третья кнопка;
MB_DEFBUTTON4 - по умолчанию используется четвертая кнопка.
Флаги, определяющие модальность диалогового окна.
MB_APPLMODAL - указывает на то, что пользователь должен закончить работу с окном сообщения прежде, чем он получит возможность продолжить работу с окном, определенным в аргументе hWnd. В зависимости от иерархии окон в приложении пользователь может иметь возможность продолжить работу с другими окнами данного потока. Все дочерние окна, принадлежащие родительскому окну, становятся недоступными, но может быть продолжена работа со вспомогательными окнами. Этот режим устанавливается в том случае, если в данном аргументе не установлен флаг этой группы.
MB_SYSTEMMODAL - действует аналогично флагу MB_APPLMODAL за тем исключением, что окно сообщения получает стиль WS_EX_TOPMOST. Данный флаг используется для извещения пользователя о серьезных ошибках, требующих его немедленной реакции (например, выход за границы памяти). Этот флаг не оказывает никакого влияния на возможности пользователя по работе с окнами, не связанными с окном, определенным в аргументе hWnd.
MB_TASKMODAL - действует аналогично флагу MB_APPLMODAL за тем исключением, что в том случае, если аргумент hWnd имеет нулевое значение, то пользователь теряет возможность доступа ко всем основным и дочерним окнам, принадлежащим данному потоку. Данный флаг используется в том случае, когда приложение или библиотека не имеют дескриптора окна, но должны прекратить доступ ко всем окнам данного потока, не препятствуя работе других потоков.
Кроме перечисленных выше флагов, объединенных в группы, пользователь может использовать следующие флаги:
MB_DEFAULT_DESKTOP_ONLY - рабочий стол, получивший фокус ввода должен быть рабочим столом, выбираемым по умолчанию. В противном случае функция завершается с ошибкой. Под рабочим столом, выбираемым по умолчанию, понимается рабочий стол, появляющийся после загрузки системы;
MB_HELP - добавляет в окно сообщения кнопку Help (Справка). Нажатие кнопки Help (Справка) или клавиши отмечает соответствующее событие;
MB_RIGHT - текст в окне сообщения выравнивается по правому краю;
MB_RTLREADING - выводит текст сообщения и заголовка справа налево, как это принято в еврейском и арабском языках;
MB_SETFOREGROUND - делает активным поток, создающий окно сообщения, и устанавливает в него фокус ввода. Для этого система вызывает для окна сообщения функцию SetForegroundWindow;
MB_TOPMOST - окно сообщения создается с флагом WS_EX_TOPMOST;
MB_SERVICE_NOTIFICATION - специфический флаг для Windows NT, означающий, что данное окно вызывает служба, извещая пользователя о событии. Данная функция отображает окно сообщения на текущем активном рабочем столе даже в том случае, если на данном компьютере не зарегистрирован ни один пользователь. Если установлен данный флаг, то аргумент hWnd должен иметь нулевое значение. Это означает, что окно сообщения может появиться на другом рабочем столе, а не на том, которому принадлежит окно, определяемое аргументом hWnd.
В Windows NT версии 4.0 значение MB_SERVICE_NOTIFICATION изменено. Новые и старые значения описаны в файле WinUser.h. Операционная система Windows NT 4.0 обеспечивает совместимость снизу вверх для существующих служб, преобразуя старые значения в новые, при работе с функциями MessageBox и MessageBoxEx. Это преобразование производится только для тех исполнительных файлов, которые имеют номер версии, установленный компоновщиком, меньший, чем 4.0.
MB_SERVICE_NOTIFICATION_NT3X - специфический флаг для Windows NT, означающий значение MB_SERVICE_NOTIFICATION, используемое в Windows NT версии 3.51.
HANDLE OpenEvent(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCTSTR lpName);
dwDesiredAccess - определяет режим доступа к объекту события. В системах, обеспечивающих безопасность объектов, данная функция аварийно завершает свою работу, если дескриптор указанного объекта не допускает использование указанного режима доступа для вызывающего процесса. Этот аргумент может принимать одно из следующих значений:
EVENT_ALL_ACCESS - устанавливает все возможные флаги доступа к объекту события;
EVENT_MODIFY_STATE - обеспечивает возможность использования дескриптора объекта события в функциях SetEvent и ResetEvent, изменяющих состояние объекта события;
SYNCHRONIZE - используется в Windows NT и позволяет использовать дескриптор объекта события в любой из функций ожидания для задания состояния объекта.
bInheritHandle - определяет возможность наследования возвращаемого дескриптора. Если этот аргумент имеет значение TRUE, то процесс, созданный функцией CreateProcess, может наследовать дескриптор. В противном случае дескриптор не может наследоваться.
lpName - указатель на заканчивающуюся нулем строку, содержащую имя открываемого объекта события. При сравнении имен учитывается регистр используемых символов.
BOOL RemoveFontResource(LPCTSTR lpFileName);
lpFileName - указатель на заканчивающуюся нулем строку, содержащую имя файла ресурса шрифта.
BOOL ResetEvent(HANDLE hEvent);
hEvent - Дескриптор объекта события, возвращенный функцией CreateEvent или OpenEvent. В Windows NT этот аргумент должен иметь уровень доступа EVENT_MODIFY_STATE.
BOOL SetCurrentDirectory(LPCTSTR lpPathName);
lpPathName - указатель на заканчивающуюся нулем текстовую строку, содержащую путь в новый рабочий каталог. Этот параметр может быть как относительным, так и полным путем. В любом случае по данному аргументу определяется полный путь в каталог и запоминается как текущий каталог.
имени диска, представляющего собой букву, соответствующую данному диску, за которой стоит символ двоеточия, или имя сервера и разделяемое имя (\\servername\sharename); имени каталога на этом диске.
int SetDIBitsToDevice(HDC hdc, int XDest, int YDest, DWORD dwWidth, DWORD dwHeight, int XSrc, int YSrc, UINT uStartScan, UINT cScanLines, CONST VOID *lpvBits, CONST BITMAPINFO *lpbmi, UINT fuColorUse);
hdc - дескриптор контекста устройства.
XDest - содержит горизонтальную координату верхнего левого угла области вывода, измеренную в логических координатах.
YDest - содержит вертикальную координату верхнего левого угла области вывода, измеренную в логических координатах.
dwWidth - содержит ширину аппаратно-независимого битового образа в логических координатах.
dwHeight - содержит высоту аппаратно-независимого битового образа в логических координатах.
XSrc - содержит горизонтальную координату нижнего левого угла аппаратно-независимого битового образа, измеренную в логических координатах.
YSrc - содержит вертикальную координату нижнего левого угла аппаратно-независимого битового образа, измеренную в логических координатах.
uStartScan - содержит начальную строку аппаратно-независимого битового образа.
cScanLines - содержит число строк аппаратно-независимого битового образа, содержащихся в массиве, на который указывает аргумент lpvBits.
lpvBits - указатель на байтовый массив аппаратно-независимого битового образа.
lpbmi - указатель на объект структуры BITMAPINFO, содержащий информацию об аппаратно-независимом битовом образе.
fuColorUse - определяет, содержит ли переменная bmiColors объекта структуры BITMAPINFO непосредственную информацию об уровнях красного, зеленого и синего цветов (RGB) или индексы текущей реализованной логической палитры. Определены следующие значения:
DIB_PAL_COLORS - таблица цветов содержит 16-разрядные индексы текущей реализованной логической палитры;
DIB_RGB_COLORS - таблица цветов содержит непосредственную информацию о цветах палитры.
BOOL SetEvent(HANDLE hEvent);
hEvent - дескриптор объекта события, возвращенный функцией CreateEvent или OpenEvent. В Windows NT этот аргумент должен иметь уровень доступа EVENT_MODIFY_STATE.
BOOL SetMenuContextHelpId(HMENU hmenu, DWORD dwContextHelpId);
hmenu - дескриптор меню, связанного с данным контекстным идентификатором.
dwContextHelpId - контекстный идентификатор справки.
BOOL SetThreadPriority(HANDLE hThread, int nPriority);
hThread - дескриптор потока, приоритет которого требуется установить. В Windows NT этот дескриптор должен иметь уровень доступа THREAD_SET_INFORMATION.
nPriority - определяет значение приоритета указанного потока. Этот аргумент может принимать одно из следующих значений:
THREAD_PRIORITY_ABOVE_NORMAL - устанавливает значение приоритета на 1 выше нормального приоритета для приоритетного класса;
THREAD_PRIORITY_BELOW_NORMAL - устанавливает значение приоритета на 1 ниже нормального приоритета для приоритетного класса;
THREAD_PRIORITY_HIGHEST - устанавливает значение приоритете на 2 выше нормального приоритета для приоритетного класса;
THREAD_PRIORITY_IDLE - устанавливает базовый приоритет, равный 1, для процессов IDLE_PRIORITY_CLASS, NORMAL_PRIORITY_CLASS или HIGH_PRIORITY_CLASS и базовый приоритет, равный 16, для процессов REALTIME_PRIORITY_CLASS;
THREAD_PRIORITY_LOWEST - устанавливает значение приоритета на 2 ниже нормального приоритета для приоритетного класса;
THREAD_PRIORITY_NORMAL - устанавливает нормальное значение приоритета для приоритетного класса;
THREAD_PRIORITY_TIME_CRITICAL - устанавливает базовый приоритет, равный 15, для процессов IDLE_PRIORITY_CLASS, NORMAL_PRIORITY_CLASS или HIGH_PRIORITY_CLASS и базовый приоритет, равный 31, для процессовREALTIME_PRIORITY_CLASS.
BOOL SetWindowContextHelpId(HWND hwnd, DWORD dwContextHelpId);
hwnd - дескриптор окна, связанного с данным контекстным идентификатором.
dwContextHelpId - контекстный идентификатор справки.
LONG SetWindowLong(HWND hWnd, int nIndex, LONG dwNewLong);
hWnd - дескриптор окна и, косвенно, класса, связанного с данным окном.
nIndex - определяет смещение величины, которую следует получить. Величина смещения может принимать значение в диапазоне от нуля до размера дополнительной памяти окна, выраженной в байтах, минус четыре. Например, при задании 12 или более байт в качестве дополнительной памяти, величина 8 будет являться индексом третьего 32-разрядного целого числа. Для доступа к величинам, характеризующим некоторые параметры окна, существуют предопределенные величины. Ниже приведен их список:
GWL_EXSTYLE - устанавливает величину дополнительного стиля окна;
GWL_STYLE - устанавливает величину дополнительного стиля окна;
GWL_WNDPROC - устанавливает указатель на процедуру обработки окна или дескриптор, позволяющий получить доступ к этому указателю;
GWL_HINSTANCE - устанавливает дескриптор экземпляра (instance) данного приложения;
GWL_HWNDPARENT - устанавливает дескриптор родительского окна, если таковое имеется;
GWL_ID - устанавливает идентификатор окна;
GWL_USERDATA - устанавливает 32-разрядную величину, связанную с окном. Эта величина предназначена для использования приложением, связанным с окном.
В случае, если аргумент hWnd является дескриптором диалогового окна, второй параметр может дополнительно принимать следующие значения:
DWL_DLGPROC - устанавливает указатель на процедуру обработки диалогового окна или дескриптор, позволяющий получить доступ к указателю на эту процедуру;
DWL_MSGRESULT - устанавливает возвращаемое значение процедуры обработки диалогового окна;
DWL_USER - устанавливает дополнительную информацию, содержание которой специфично для каждого приложения. В качестве такой информации могут выступать указатели и дескрипторы.
dwNewLong - новое значение устанавливаемой величины.
VOID Sleep(DWORD dwMilliseconds);
dwMilliseconds - определяет промежуток времени, измеряемый в миллисекундах, на который следует приостановить исполнение данного потока. Нулевое значение данного аргумента заставляет поток передать остаток своего кванта времени любому другому потоку, имеющему одинаковый с ним приоритет и готовому приступить к работе. Если такой поток отсутствует, то функция немедленно завершает свою работу и поток возобновляет свою работу. Значение INFINITE означает бесконечную задержку.
DWORD WaitForSingleObject(HANDLE hHandle, DWORD dwMilliseconds);
WAIT_ABANDONED - указанный объект является мютексом, который не был освобожден потоком, которому он принадлежит, перед завершением данного потока. Принадлежность мютекса вызывающему потоку гарантируется. Поэтому этот объект остался неотмеченным;
WAIT_OBJECT_0 -указанный объект находится в отмеченном состоянии;
WAIT_TIMEOUT - истек период ожидания, а объект остался неотмеченным.
hHandle - дескриптор объекта. Список типов объектов, дескрипторы которых могут использоваться в качестве данного аргумента, содержится в примечании. В Windows NT дескриптор должен иметь уровень доступа SYNCHRONIZE.
dwMilliseconds - определяет интервал времени, измеряемый в миллисекундах. По истечении этого интервала времени, если указанный объект остается неотмеченным, функция завершает свою работу. Если данный аргумент имеет нулевое значение, функция проверяет состояние объекта и немедленно прекращает свою работу. Если аргумент dwMilliseconds имеет значение INFINITE, то функция ждет отметки объекта неограниченное время.
извещениями об изменениях;
вводом с системной консоли;
объектами событий;
заданиями;
мютексами;
процессами;
семафорами;
потоками;
таймерами ожидания.
BOOL WinHelp(HWND hWndMain, LPCTSTR lpszHelp, UINT uCommand, DWORD dwData);
hWndMain - дескриптор окна, из которого вызывается справка. Функция WinHelp использует данный дескриптор для определения того, какое из приложений запросило справочную информацию. Если аргумент uCommand имеет значение HELP_CONTEXTMENUили HELP_WM_HELP, то данный аргумент определяет элемент управления, по которому нужно получить справку.
lpszHelp - указатель на заканчивающуюся нулем текстовую строку, содержащую имя и, если это необходимо, путь к файлу справки, текст которой данная функция должна выводить на экран. После имени файла может стоять угловая скобка (>) за которой указывается имя вторичного окна, если информация выводится во вторичное, а не в первичное окно справки. Имя вторичного окна справки должно быть определено в разделе [WINDOWS] файла проекта справки (.hpj).
uCommand - определяет тип запрашиваемой справочной информации.
dwData - дополнительная информация. Структура данного аргумента определяется значением аргумента uCommand.
Таблица П2.2. Соответствие значений агументов uCommand и dwData
Значения аргумента uCommand | Предпринимаемые дейст-вия | Формат аргумента dwData |
HELP_COMMAND | Выполняет макрос справки или строку макроса. | Указатель на строку, содер-жащую имя выполняемого макроса справки. Если в строке указано несколько имен макросов, имена долж-ны разделяться точкой с запятой. Для некоторых макросов необходимо ис-пользовать короткую форму имени, поскольку справочная система Windows не позволя-ет работать с длинными именами. |
HELP_CONTENTS | Выводит содержимое раздела справки, определенное клю-чевым словом Contents в разделе [OPTIONS] файла .hpj. Эта команда использует-ся для обеспечения совмес-тимости с предыдущими версиями. Новые приложения должны использовать файл .cnt и команду HELP_FINDER. | Игнорируется и устанавлива-ется в 0. |
HELP_CONTEXT | Выводит тему справки, за-данную контекстным иден-тификатором, определенным в разделе [MAP] файла .hpj. | Целое число без знака, со-держащее контекстный иден-тификатор раздела. |
HELP_CONTEXTMENU | Выводит меню Help для указанного окна. Затем выво-дит справочную информацию по выделенному элементу управления во всплывающем окне. | Указатель на массив пар идентификаторов. Первое двойное слово в каждой паре представляет собой иденти-фикатор элемента управле-ния, а второе слово - кон-текстный идентификатор раздела. |
HELP_CONTEXTPOPUP | Выводит во всплывающем окне тему справки, заданную контекстным идентификато-ром, определенным в разделе [MAP] файла .hpj. | Целое число без знака, со-держащее контекстный иден-тификатор раздела. |
HELP_FINDER | Выводит диалоговое окно Справочная система. | Игнорируется и устанавлива-ется в 0. |
HELP_FORCEFILE | Обеспечивает вывод требуе-мого файла справки справоч-ной системой. Если выводит-ся другой файл справки, справочная система выводит нужный. В противном случае не выполняет никаких дейст-вий. | Игнорируется и устанавлива-ется в 0. |
HELP_HELPONHELP | Если доступен файл WINHLP32.HLP, выводит справочную информацию по пользованию справочной системой. | Игнорируется и устанавлива-ется в 0. |
HELP_INDEX | Выводит содержимое раздела справки, определенное клю-чевым словом Contents в разделе [OPTIONS] файла .hpj. Эта команда использует-ся для обеспечения совмес-тимости с предыдущими версиями. Новые приложения должны использовать файл .cnt и команду HELP_FINDER. | Игнорируется и устанавлива-ется в 0. |
HELP_KEY | Выводит тему справки по ключевому слову, содержа-щемуся в таблице ключевых слов в том случае, если обес-печено полное совпадение. Если найдено более одного раздела, соответствующего данному ключевому слову, выводит диалоговое окно Найденные разделы, содер-жащее список найденных разделов. | Указатель на строку, содер-жащую ключевое слово. Несколько ключевых слов должны разделяться точкой с запятой. |
HELP_MULTIKEY | Выводит тему справки по ключевому слову, содержа-щемуся в альтернативной таблице ключевых слов. | Указатель на объект структу-ры MULTIKEYHELP, опреде-ляющей символ нижнего индекса таблицы и ключевое слово. |
HELP_PARTIALKEY | Выводит тему справки по ключевому слову, содержа-щемуся в таблице ключевых слов в том случае, если обес-печено полное совпадение. Если найдено более одного раздела, соответствующего данному ключевому слову, выводит диалоговое окно Найденные разделы. | Указатель на строку, содер-жащую ключевое слово. Несколько ключевых слов должны разделяться точкой с запятой. Для вывода содер-жания без указания ключево-го слова необходимо пере-дать указатель на пустую строку. |
HELP_QUIT | Сообщает справочной систе-ме Windows о прекращении работы с ней. Если со спра-вочной системой не работают другие приложения, закрыва-ет справочную систему Win-dows. | Игнорируется и устанавлива-ется в 0. |
HELP_SETCONTENTS | Определяет содержимое раздела Contents. Справочная система Windows выводит эту тему, если файл справки не имеет связанного с ним файла .cnt. | Целое число без знака, со-держащее контекстный иден-тификатор раздела Contents. |
HELP_SETPOPUP_POS | Устанавливает позицию всплывающего окна. Позиция всплывающего окна устанав-ливается таким образом, как будто бы указатель мыши располагался в указанной точке при вызове данного окна. | Указатель на объект структу-ры POINT. |
HELP_SETWINPOS | Выводит окно справки, если оно было минимизировано или располагалось в памяти. | Указатель на объект структу-ры HELPWININFO, опреде-ляющей размер и положение первичного или вторичного окна справки. |
HELP_TCARD | Указывает на то, что данная команда относится к после-довательности вторичных окон. Данная команда ком-бинируется с другими коман-дами с использованием опе-рации логического ИЛИ. | Зависит от команды, с кото-рой объединена данная ко-манда. |
HELP_WM_HELP | Выводит во всплывающее окно справку об элементе управления, указанном в аргументе hWndMain. | Указатель на массив пар идентификаторов. Первое двойное слово в каждой паре представляет собой иденти-фикатор элемента управле-ния, а второе слово - кон-текстный идентификатор раздела. |