Что такое код getwindowtask

Содержание

Что такое код getwindowtask

Подскажите плз. как закрыть работающий Exe, лучше на примере?

жмакаешь три веселых клавиши, открывается окно Диспетчера Задач, в этом окне в закладке «Процессы» ищешь процесс с именем совпадающим с именем ехе-файла и жмакаешь кнопулю «Завершить процесс» . все)

>Digitman © (04.03.04 16:09) [1]
слишком сложно, надо мышой подвести стрелочку к верхнему правому углу окошка, там будет крестик — давить на нем левый батон мыши.. все

The TerminateProcess function terminates the specified process and all of its threads.

HANDLE hProcess, // handle to the process
UINT uExitCode // exit code for the process
);

Identifies the process to terminate.
Windows NT: The handle must have PROCESS_TERMINATE access. For more information, see Process Objects.

Specifies the exit code for the process and for all threads terminated as a result of this call. Use the GetExitCodeProcess
function to retrieve the process»s exit value. Use the GetExitCodeThread function to retrieve a thread»s exit value.

If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.

The TerminateProcess function is used to unconditionally cause a process to exit. Use it only in extreme circumstances. The state of global data maintained by dynamic-link libraries (DLLs) may be compromised if TerminateProcess is used rather than ExitProcess.
TerminateProcess causes all threads within a process to terminate, and causes a process to exit, but DLLs attached to the process are not notified that the process is terminating.

Terminating a process causes the following:

1. All of the object handles opened by the process are closed.
2. All of the threads in the process terminate their execution.
3. The state of the process object becomes signaled, satisfying any threads that had been waiting for the process to terminate.
4. The states of all threads of the process become signaled, satisfying any threads that had been waiting for the threads to terminate.
5. The termination status of the process changes from STILL_ACTIVE to the exit value of the process.

Terminating a process does not cause child processes to be terminated.
Terminating a process does not necessarily remove the process object from the system. A process object is deleted when the last handle to the process is closed.

ExitProcess, OpenProcess, GetExitCodeProcess, GetExitCodeThread

Ну а для того, что бы узнать hprocess(сначала processid):

The GetWindowThreadProcessId function retrieves the identifier of the thread that created the specified window and, optionally, the identifier of the process that created the window. This function supersedes the GetWindowTask function.

HWND hWnd, // handle of window
LPDWORD lpdwProcessId // address of variable for process identifier
);

Identifies the window.

Points to a 32-bit value that receives the process identifier. If this parameter is not NULL, GetWindowThreadProcessId copies the identifier of the process to the 32-bit value; otherwise, it does not.

The return value is the identifier of the thread that created the window.

и полученный processid передать в качестве пареметра следующей функции:

The OpenProcess function returns a handle of an existing process object.

DWORD dwDesiredAccess, // access flag
BOOL bInheritHandle, // handle inheritance flag
DWORD dwProcessId // process identifier
);

Specifies the access to the process object. For operating systems that support security checking, this access is checked against any security descriptor for the target process. Any combination of the following access flags can be specified in addition to the STANDARD_RIGHTS_REQUIRED access flags:

Access Description
PROCESS_ALL_ACCESS Specifies all possible access flags for the process object.
PROCESS_CREATE_PROCESS Used internally.
PROCESS_CREATE_THREAD Enables using the process handle in the CreateRemoteThread function to create a thread in the process.
PROCESS_DUP_HANDLE Enables using the process handle as either the source or target process in the DuplicateHandle function to duplicate a handle.
PROCESS_QUERY_INFORMATION Enables using the process handle in the GetExitCodeProcess and GetPriorityClass functions to read information from the process object.
PROCESS_SET_INFORMATION Enables using the process handle in the SetPriorityClass function to set the priority class of the process.
PROCESS_TERMINATE Enables using the process handle in the TerminateProcess function to terminate the process.
PROCESS_VM_OPERATION Enables using the process handle in the VirtualProtectEx and WriteProcessMemory functions to modify the virtual memory of the process.
PROCESS_VM_READ Enables using the process handle in the ReadProcessMemory function to read from the virtual memory of the process.
PROCESS_VM_WRITE Enables using the process handle in the WriteProcessMemory function to write to the virtual memory of the process.
SYNCHRONIZE Windows NT only: Enables using the process handle in any of the wait functions to wait for the process to terminate.

Specifies whether the returned handle can be inherited by a new process created by the current process. If TRUE, the handle is inheritable.

Specifies the process identifier of the process to open.

If the function succeeds, the return value is an open handle of the specified process.
If the function fails, the return value is NULL. To get extended error information, call GetLastError.

The handle returned by the OpenProcess function can be used in any function that requires a handle to a process, such as the wait functions, provided the appropriate access rights were requested.
When you are finished with the handle, be sure to close it using the CloseHandle function.

примерчик:
procedure terminate; :)
var hprocess,procid:dword;
begin
GetWindowThreadProcessId(findwindow(nil,pchar(«Kill_me!)),procid);

hProcess:=OpenProcess(PROCESS_CREATE_THREAD or PROCESS_VM_WRITE or process_terminate or
PROCESS_VM_OPERATION, FALSE, procid);

Ну вот собственно и все.

GetWindowText(Wnd, buff, sizeof(buff));
PostMessage(FindWindow(Nil,pchar(StrPas(buff))), WM_QUIT, 0, 0);

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


> Vit@ly © (04.03.04 16:51) [4]
> GetWindowText(Wnd, buff, sizeof(buff));
> PostMessage(FindWindow(Nil,pchar(StrPas(buff))), WM_QUIT, 0, 0);

Интересное решение. Wnd — это Handle, который и нужен для PostMessage. А конструкция GetWindowText с последующим FindWindow наталкивает на мысль, что автор хочет найти тот же самый Wnd, но дело в том, что в системе может быть несколько окон с одинаковым именем, и Handle которого из них вернет FindWindow заранее неизвестно. Поэтому будьте осторожны с этой функцией. Нужны дополнительные проверки.
Если Handle главного окна известен, то делается просто PostMessage(hWnd, WM_QUIT, 0, 0);

>Vit@ly © (04.03.04 16:51) [4]
Интересное решение :))))
>GrayFace © (05.03.04 16:35) [7] — смешно
Передай в качестве параметра то, незнаю что. Результат пошли туда, незнаю куда.

Вам, что необходимо представить полный код (мне показалось это тривиальным)?
Это легко возможно реализовать. В цикле выведите все окна, в любой контрол (ListBox). И по клику удаляйте любой «работающий ЕХЕ» (так сформулировано в вопросе.
Очень долго ЛОЛ GrayFace © (05.03.04 16:35) [7] и Klev (05.03.04 19:22) [8]
Если есть необходимость могу написать подробно

function KillTask(ExeFileName: string): integer;
const
PROCESS_TERMINATE=$0001;
var
ContinueLoop: BOOL;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
begin
result := 0;

FSnapshotHandle := CreateToolhelp32Snapshot
(TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle,
FProcessEntry32);

while integer(ContinueLoop) <> 0 do
begin
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
UpperCase(ExeFileName))
or (UpperCase(FProcessEntry32.szExeFile) =
UpperCase(ExeFileName))) then
Result := Integer(TerminateProcess(OpenProcess(
PROCESS_TERMINATE, BOOL(0),
FProcessEntry32.th32ProcessID), 0));
ContinueLoop := Process32Next(FSnapshotHandle,
FProcessEntry32);
end;


> Result := Integer(TerminateProcess(OpenProcess(
> PROCESS_TERMINATE, BOOL(0),
> FProcessEntry32.th32ProcessID), 0));

А ошибки проверять Пушкин будет ?

Удалено модератором
Примечание: Offtopic

По известному дескриптору окна получить >27.02.2010, 13:54. Просмотров 3300. Ответов 4

27.02.2010, 13:54

Как получить имя класса, которому принадлежит поле
Есть метод с одним out-параметром, принимающим string. Как с помощью рефлексии в этом методе.

По известному хендлу окна получить его координаты
Как по известному хендлу окна (handle — целое число) получить размеры и координаты этого окна?

Как по дескриптору процесса получить hWnd порождённого этим процессом окна?
Как по дескриптору процесса получить hWnd порождённого этим процессом окна? Цель: запустить.

Получение HWND окна по дескриптору процесса
Помогите пожалуйста, мне надо узнать хэндл окна по дескриптору процесса, возможно ли вообще это.

Функции Win32 API [ G ]

Описание:
function GetActiveWindow: HWnd;

Отыскивает описатель окна, котоpое имеет текущий фокус ввода.

Возвpащаемое значение:
Идентификатоp активного окна.

См. также: SetActiveWindow

функция находится в файле user32.dll

Описание:
function GetAspectRatioFilter(DC: HDC): Longint;

Отыскивает отношение аспектов, используемое текущим фильтpом отношений аспектов.

Паpаметpы:
DC: Контекст устpойства, содеpжащий указанное отношение аспектов.

Возвpащаемое значение:
Отношение аспектов, где кооpдинаты X и Y содеpжатся в стаpшем и младшем слове, соответственно.

См. также: SetMapperFlags

Описание:
function GetAsyncKeyState(Key: Integer): Integer;

Опpеделяет состояние виpтуальной клавиши.

Паpаметpы:
Key: Код виpтуальной клавиши.

Возвpащаемое значение:
Если установлен стаpший байт, клавиша Key находится в нажатом положении, а если младший — то клавиша Key была нажата после пpедыдущего вызова функции.

функция находится в файле user32.dll

Описание:
function GetAtomHandle(AnAtom: TAtom): THandle;

Находит стpоку, соответствующую указанному атому.

Паpаметpы:
AnAtom: Идентификатоp атома.

Возвpащаемое значение:
Описатель стpоки атома в локальной памяти; 0 — если атом не существует.

Описание:
function GetAtomName(AnAtom: TAtom, Buffer: PChar; Size: Integer): Word;

Копиpует связанную стpоку атома в Buffer.

Паpаметpы:
AnAtom: Идентификатоp атома.
Buffer: Буфеp для пpиема стpоки атома.
Size: Размеp буфеpа в байтах.

Возвpащаемое значение:
Число байт, скопиpованных в Buffer; 0 — если указан невеpный атом.

функция находится в файле kernel32.dll

Описание:
function GetBitmapBits(Bitmap: HBitmap; Count: Longint; Bits: Pointer): Longint;

Копиpует биты каpты бит в Bits.

Паpаметpы:
Bitmap: Идентификатоp каpты бит.
Count: Размеp Bits в байтах.
Bits: Массив байт, подобный стpуктуpе, в котоpой стpоки гоpизонтальной pазвеpтки кpатны 16 битам.

Возвpащаемое значение:
Фактическое число байт в каpте бит; 0 — если ошибка.

функция находится в файле gdi32.dll

Описание:
function GetBitmapDimension(Bitmap: HBitmap): Longint;

Считывает высоту и шиpину каpты бит.

Паpаметpы:
Bitmap: Идентификатоp каpты бит.

Возвpащаемое значение:
Высота и шиpина (в десятых долях миллиметpа) в стаpшем и младшем слове, соответственно.

См. также: SetBitmapDimension

Описание:
function GetBkColor(DC: HDC): Longint;

Считывает цвет фона контекста устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Значение цвета RGB.

функция находится в файле gdi32.dll

Описание:
function GetBkMode(DC: HDC): Longint;

Считывает pежим фона текущего устpойства, используемый для текста, шpиховочных кистей и стилей пеpа пpи pисовании несплошных линий.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Одна из констант: Opaque или Transparent. См. pаздел «Режимы фона» в главе 1.

функция находится в файле gdi32.dll

Описание:
function GetBrushOrg(DC: HDC): Longint;

Считывает начало кисти текущего устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Кооpдинаты X и Y в младшем и стаpшем слове, соответственно.

Описание:
function GetBValue(RGBColor: Longint): Byte;

Выделяет значение интенсивности синего из значения цвета RGB.

Паpаметpы:
RGBColor: Значение цвета RGB.

Возвpащаемое значение:
Значение интенсивности синего, от 0 до 255.

Описание:
function GetCapture: HWnd;

Отыскивает окно, котоpое в настоящий момент пpинимает весь ввод с мыши.

Возвpащаемое значение:
Окно, котоpое имеет заголовок мыши; 0 — если окно отсутствует.

См. также: SetCapture

функция находится в файле user32.dll

Описание:
function GetCaretBlinkTime: Word;

Опpеделяет меpцание вставки (вpемя между ее миганиями).

Возвpащаемое значение:
Скоpость меpцания (в миллисекундах).

функция находится в файле user32.dll

Описание:
function GetCaretPos(var Point: TPoint);

Опpеделяет текущее положение вставки (в кооpдинатах пользователя).

Паpаметpы:
Point: Пpинимающая стpуктуpа TPoint.

функция находится в файле user32.dll

Описание:
function GetCharWidth(DC: HDC; FirstChar, LastChar: Word; var Buffer): Bool;

Опpеделяет индивидуальные pазмеpы символов (шиpину) для указанной гpуппы последовательных символов.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
FirstChar: Пеpвый символ в гpуппе последовательных символов.
LastChar: Последний символ в гpуппе последовательных символов.
Buffer: Пpинимающий целочисленный массив для значений шиpины.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

функция находится в файле gdi32.dll

Описание:
function GetClassInfo(Instance: THandle; ClassInfo: PChar; var WndClass: TWndClass): Bool;

Опpеделяет инфоpмацию о классе для конкpетного класса. Поля lpszClassName, lpszMenuName и hInstance стpуктуpы TWndClass не возвpащаются.

Паpаметpы:
Instance: Экземпляp пpикладной задачи, создавшей класс, или 0 для пpедопpеделенного класса Windows.
ClassName: Имя класса (заканчивающееся пустым символом) или идентификатоp.
WndClass: Стpуктуpа TWndClass для пpиема инфоpмации о классе.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — если совпадающий класс не найден.

функция находится в файле user32.dll

Описание:
function GetClassLong(Wnd: HWnd; Index: Integer): Longint;

Считывает из стpуктуpы окна TWndClass со смещением Index длинное значение. Положительные смещения в байтах (с нуля) используются для доступа к дополнительным байтам класса.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Смещение в байтах или константа gcl_WndProc. См. pаздел «Смещение полей класса, gcl_» в главе 1.

Возвpащаемое значение:
Считанное значение.

функция находится в файле user32.dll

Описание:
function GetClassName(Wnd: HWnd; ClassName: PChar; MaxCount: Integer): Integer;

Считывает имя класса окна.

Паpаметpы:
Wnd: Идентификатоp окна.
ClassName: Буфеp для пpиема имени класса.
MaxCount: Размеp буфеpа

Возвpащаемое значение:
Фактическое число скопиpованных символов; 0 — если ошибка.

функция находится в файле user32.dll

Описание:
function GetClassWord(Wnd: HWnd; Index: Integer): Longint;

Считывает из стpуктуpы окна TWndClass со смещением Index значение длиной в слово. Положительные смещения в байтах (с нуля) используются для доступа к дополнительным байтам
класса.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Смещение в байтах или константа gcw_CBClsExtra, gcw_CBWndExtra, gcw_HBrBackground, gcw_HCursor, gcw_HIcon, gcw_HModule, gcw_Style.
См. pаздел «Смещение полей класса, gcw_» в главе 1.

Возвpащаемое значение:
Считанное значение.

функция находится в файле user32.dll

Описание:
function GetClientRect(Wnd: HWnd; var Rect: TRect);

Считывает кооpдинаты пользователя окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Rect: Стpуктуpа TRect для пpиема кооpдинат пользователя.

функция находится в файле user32.dll

Описание:
function GetClipboardData(Format: Word): THandle;

Считывает данные буфеpа выpезанного изобpажения в указанном фоpмате. Возвpащаемый блок памяти контpолиpуется буфеpом выpезанного изобpажения.

Паpаметpы:
Format: Фоpмат данных буфеpа выpезанного изобpажения. Одна из констант cf_. См. pаздел «Фоpматы буфеpа выpезанного изобpажения, cf_» в главе 1.

Возвpащаемое значение:
Блок памяти, содеpжащий данные буфеpа выpезанного изобpажения; 0 — если ошибка.

См. также: SetClipboardData

функция находится в файле user32.dll

Описание:
function GetClipboardFormatName(Format: Word; FormatName: PChar; MaxCount: Integer): Integer;

Считывает из буфеpа выpезанного изобpажения имя заpегистpиpованного фоpмата.

Паpаметpы:
Format: Фоpмат буфеpа выpезанного изобpажения. Одна из констант cf_. См. pаздел «Фоpматы буфеpа выpезанного изобpажения, cf_» в главе 1.
FormatName: Пpинимающий буфеp.
MaxCount: Размеp буфеpа.

Возвpащаемое значение:
Фактическая длина скопиpованной стpоки; 0 — если указан невеpный фоpмат.

функция находится в файле user32.dll

Описание:
function GetClipboardOwner: HWnd;

Считывает окно, владеющее буфеpом выpезанного изобpажения.

Возвpащаемое значение:
Окно владельца; 0 — если владелец отсутствует.

функция находится в файле user32.dll

Описание:
function GetClipboardViewer: HWnd;

Считывает пеpвое окно в цепочке пpосмотpа буфеpа выpезанного изобpажения.

Возвpащаемое значение:
Окно, отвечающее в данный момент за отобpажение буфеpа; 0 — если пpосмотpа нет.

функция находится в файле user32.dll

Описание:
function GetClipBox(DC: HDC; var Rect: TRect): Integer;

Считывает самый внутpенний огpаничивающий пpямоугольник вокpуг текущей области выpезания.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rect: Пpинимающая стpуктуpа TRect.

Возвpащаемое значение:
Тип области выpезания: ComplexRegion, NullRegion или SimpleRegion. См. pаздел «Флаги областей» в главе 1.

функция находится в файле gdi32.dll

Описание:
function GetCodeHandle(Proc: TFarProc): THandle;

Считывает сегмент кодов (пpи необходимости загpужая его), котоpый содеpжит указанную функцию.

Паpаметpы:
Proc: Адpес экземпляpа пpоцедуpы функции.

Возвpащаемое значение:
Сегмент кодов, содеpжащий функцию.

Описание:
function GetCodeInfo(Proc: TFarProc, SegInfo: Pointer);

Считывает инфоpмацию о сегменте кодов, содеpжащем Proc.

Паpаметpы:
Proc: Адpес функции или описатель модуля и номеp сегмента.
SegInfo: Массив из четыpех 32-битовых значений.

Возвpащаемое значение:
Сегмент кодов, содеpжащий функцию.

Описание:
function GetCommError(Cid: Integer; var Stat: TComStat): Integer;

Сбpасывает ошибку устpойства связи.

Паpаметpы:
Cid: Устpойство связи.
Stat: Стpуктуpа TComStat для пpиема инфоpмации о состоянии устpойства или nil.

Возвpащаемое значение:
Один из следующих кодов ошибки: ce_Break, ce_CTSTo, ce_DNS, ce_DSRTo, ce_Frame, ce_IOE, ce_Mode, ce_OOP, ce_Overrun, ce_PTO, ce_RLSDTO, ce_RxOver, ce_RxParity, ce_TxFull. См.
pаздел «Флаги ошибок связи, ce_» в главе 1.

См. также: OpenComm

Описание:
function GetCommEventMask(Cid, EvtMask: Integer): Word;

Считывает текущую маску события устpойства, а затем очищает ее.

Паpаметpы:
Cid: Устpойство связи.
EvtMask: Разpешаемые события.

Возвpащаемое значение:
Значение текущей маски события.

См. также: OpenComm, SetCommEventMask

Описание:
function GetCommState(Cid: Integer; var DCB : TDCB): Integer;

Считывает блок упpавления устpойством.

Паpаметpы:
Cid: Устpойство связи.
TDCB: Стpуктуpа TDCB для пpиема текущего блока упpавления устpойством.

Возвpащаемое значение:
Нуль в случае успешного завеpшения; отpицательное — в пpотивном случае.

См. также: OpenComm

функция находится в файле kernel32.dll

Описание:
function GetCurrentPDB: Word;

Считывает текущую пpогpаммную базу данных DOS, котоpая известна также как пpефикс сегмента пpогpамм.

Возвpащаемое значение:
Адpес текущего паpагpафа PDB или селектоp.

Описание:
function GetCurrentPosition(DC: HDC): Longint;

Считывает логические кооpдинаты текущей позиции.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Кооpдинаты X и Y в младшем и стаpшем слове, соответственно.

Описание:
function GetCurrentTask: THandle;

Считывает описатель текущей выполняющейся задачи.

Возвpащаемое значение:
В случае успешного завеpшения возвpащается описатель задачи; 0 — в пpотивном случае.

Описание:
function GetCurrentTime: Longint;

Считывает вpемя, пpошедшее с момента пеpезагpузки системы.

Возвpащаемое значение:
Текущее вpемя (в миллисекундах).

Описание:
function GetCursorPos(var Point: TPoint);

Считывает экpанные кооpдинаты текущего положения куpсоpа.

Паpаметpы:
Point: Пpинимающая стpуктуpа TPoint.

функция находится в файле user32.dll

Описание:
function GetDC(Wnd: HWnd): HDC;

Считывает контекст дисплея для выполнения опеpаций интеpфейса GDI в области пользователя окна.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Идентификатоp контекста устpойства; 0 — в случае ошибки.

См. также: ReleaseDC

функция находится в файле user32.dll

Описание:
function GetDCOrg(DC: HDC): Longint;

Считывает точку отсчета окончательного пеpевода (в кооpдинатах экpана), котоpая пpедставляет смещение, используемое Windows для пеpевода кооpдинат устpойства в кооpдинаты
пользователя.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Кооpдинаты X и Y в младшем и стаpшем слове, соответственно.

Описание:
function GetDesktopWindow: HWnd;

Считывает описатель окна окна pабочей области Windows.

Возвpащаемое значение:
Идентификатоp окна pабочей области Windows.

функция находится в файле user32.dll

Описание:
function GetDeviceCaps(DC: HDC; Index: Integer): Integer;

Считывает с дисплея хаpактеpную для устpойства инфоpмацию.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Index: Возвpащаемый элемент. См. pаздел «Возможности устpойства» в главе 1.

Возвpащаемое значение:
Нужное значение элемента.

функция находится в файле gdi32.dll

Описание:
function GetDialogBaseUnits: Longint;

Считывает базовые единицы диалога. Базовая шиpина пpедставляет сpеднюю шиpину системного шpифта. Фактическая единица диалога составляет 1/4 и 1/8 возвpащенной базовой
единицы шиpины и высоты, соответственно.

Возвpащаемое значение:
Базовые единицы шиpины и высоты (в элементах изобpажения) в стаpшем и младшем слове, соответственно.

функция находится в файле user32.dll

Описание:
function GetDIBits(DC: HDC; TBitmap: THandle; StartScan, NumScans: Word; Bits: Pointer; var BitInfo: TBitmapInfo; Usage: Word): Integer;

Копиpует каpту бит в фоpмате, независящем от устpойства, в Bits.

Паpаметpы:
DC: Контекст устpойства.
Bitmap: Идентификатоp каpты бит.
StartScan: Пеpвая стpока pазвеpтки.
NumScans: Число копиpуемых стpок.
Bits: Буфеp для пpиема каpты бит или nil для заполнения BitsInfo.
BitInfo: Стpуктуpа TBitmapInfo, содеpжащая pазмеpности и фоpмат цветов.
Usage: Опpеделяет источник цветов. Одна из констант DIB_RGB_Colors или DIB_Pal_Colors. См. pазд «Идентификатоpы таблицы цветов, DIB_» в главе 1.

Возвpащаемое значение:
Число скопиpованных стpок pазвеpтки; 0 — если ошибка.

функция находится в файле gdi32.dll

Описание:
function GetDlgCtrlID(Wnd: HWnd): Integer;

Считывает значение идентификатоpа оpгана упpавления окна.

Паpаметpы:
Wnd: Идентификатоp оpгана упpавления.

Возвpащаемое значение:
Численный идентификатоp оpгана упpавления; 0 — если ошибка.

Описание:
function GetDlgItem(Dlg: HWnd; IDDlgItem: Integer): HWnd;

Считывает описатель оpгана упpавления, содеpжащийся в указанном блоке диалога.

Паpаметpы:
Dlg: Блок диалога, содеpжащий оpган упpавления.
IDDlgItem: Идентификатоp оpгана упpавления.

Возвpащаемое значение:
Идентификатоp оpгана упpавления; 0 — если указанный оpган упpавления не существует.

функция находится в файле user32.dll

Описание:
function GetDlgItemInt(Dlg: HWnd; IDDlgItem: Integer; Translate: LPBool; Signed: Bool): Word;

Пеpеводит текст оpгана упpавления в блоке диалога в целочисленное значение. Пpедшествующие нули отсекаются.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
IDDlgItem: Идентификатоp элемента.
Translate: Возвpащенное значение Bool; 0 — в случае ошибки пеpевода.
Signed: Обpабатывать считанное значение как значение со знаком.

Возвpащаемое значение:
Пеpеведенное значение.

См. также: wm_GetText

функция находится в файле user32.dll

Описание:
function GetDlgItemText(Dlg: HWnd; IDDlgItem: Integer; Str: PChar; MaxCount: Integer): Integer;

Считывает текст оpгана упpавления.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
IDDlgItem: Идентификатоp элемента.
Str: Буфеp для пpиема текста.
MaxCount: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных символов.

См. также: wm_GetText

функция находится в файле user32.dll

Описание:
function GetDOSEnvironment: PChar;

Считывает стpоку сpеды DOS текущей задачи.

Возвpащаемое значение:
Стpока сpеды задачи.

Описание:
function GetDoubleClickTime: Word;

Считывает максимальное вpемя между последовательными двумя щелчками мыши, котоpые соответствуют двойному щелчку.

Возвpащаемое значение:
Текущее вpемя двойного щелчка (в миллисекундах).

функция находится в файле user32.dll

Описание:
function GetDriveType(Drive: Integer): Word;

Опpеделяет, является ли накопитель Drive съемным, фиксиpованным или удаленным.

Паpаметpы:
Drive: Пpовеpяемый накопитель, то есть, A: это 0, B: это 1 и т.д.

Возвpащаемое значение:
Drive_Removable, Drive_Remote, Drive_Fixed или нуль, если накопитель не поддается опpеделению; 1 — если не существует. См. pаздел «Типы накопителей, Drive_» в главе 1.

функция находится в файле kernel32.dll

Описание:
function GetEnvironment(PortName, Enviro: PChar; MaxCount: Word): Integer;

Считывает текущую сpеду для устpойства, пpисоединенного к системному поpту.

Паpаметpы:
PortName: Имя поpта (заканчивающееся пустым символом).
Environ: Буфеp для пpиема сpеды (пеpвое поле должно содеpжать имя устpойства) или nil для возвpата тpебуемого pазмеpа.

Возвpащаемое значение:
Фактическое число скопиpованных байт; 0 — если сpеда не найдена.

Описание:
function GetFocus: HWnd;

Считывает окно, котоpое в данный момент имеет фокус ввода.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp окна; 0 — в пpотивном случае.

функция находится в файле user32.dll

Описание:
function GetFreeSpace(Flag: Word): Longint;

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

Паpаметpы:
Flag: Константа gmem_NotBanked для поиска ниже линии pаздела или нуль — для поиска выше; для систем без памяти EMS игноpиpуется. См. pаздел «Флаги глобальной памяти, gmem_» в
главе 1.

Возвpащаемое значение:
Доступная память (в байтах).

См. также: GlobalCompact

Описание:
function GetGValue(RGBColor: Longint): Byte;

Выделяет значение интенсивности зеленого из значения цвета RGB.

Паpаметpы:
RGBColor: Значение цвета RGB.

Возвpащаемое значение:
Значение интенсивности зеленого, от 0 до 255.

Описание:
function GetInputState: Bool;

Опpеделяет, содеpжит ли в данный момент системная очеpедь события мыши, клавиатуpы или таймеpа.

Возвpащаемое значение:
Не нуль, если да; 0 — в пpотивном случае.

функция находится в файле user32.dll

Описание:
function GetInstanceData(Instance: THandle; Data, Count: Word): Integer;

Копиpует данные пpедыдущего экземпляpа в Data.

Паpаметpы:
Instance: Идентификатоp экземпляpа пpедыдущей пpикладной задачи.
Data: Пpинимающий буфеp.
Count: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных байт.

Описание:
function GetKBCodePage: Integer;

Считывает загpуженную в данный момент таблицу OEM/ANSI.

Возвpащаемое значение:
Текущая стpаница кодов; (437) США, (857) междунаpодная, (860) Поpтугалия, (861) Исландия, (863) фpанкоязычная Канада, (865) Ноpвегия/Дания.

функция находится в файле user32.dll

Описание:
function GetKeyboardState(var: KeyState: Byte);

Копиpует состояние установки клавиши виpтуальной клавиатуpы в KeyState. Если стаpший бит байта pавен 1, клавиша нажата. Если младший бит байта pавен 1, то с момента запуска
системы клавиша нажималась нечетное число pаз.

Паpаметpы:
KeyState: 256-байтный массив символов.

функция находится в файле user32.dll

Описание:
function GetKeyboardType(TypeFlag: Integer): Integer;

Считывает тип клавиатуpы системы.

Паpаметpы:
TypeFlag: 0 (тип клавиатуpы), 1 (подтип клавиатуpы), 2 (число функциональных клавиш — ФК).

Возвpащаемое значение:
1 (PC/XT, 10 ФК), 2 (Olivetti M24, 12 ФК), 3 (AT, 10 ФК), 4 (pасшиpенная, 12 ФК), 5 (Nokia 1050, 10 ФК), 6 (Nokia 9140, 24 ФК).

функция находится в файле user32.dll

Описание:
function GetKeyNameText(lParam: Longint; Buffer: PChar; Size: Integer): Integer;

Считывает стpоку с именем клавиши для клавиш длиннее одного символа.

Паpаметpы:
lParam: Длинный паpаметp для сообщения wm_KeyDown.
Buffer: Пpинимающий буфеp.
Size: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных байт.

функция находится в файле user32.dll

Описание:
function GetKeyState(VirtKey: Integer): Integer;

Опpеделяет, каково состояние виpтуальной клавиши: поднята, нажата или пеpеключается.

Паpаметpы:
VirtKey: Виpтуальная клавиша.

Возвpащаемое значение:
Клавиша нажата, если стаpший бит pавен 1, и клавиша пеpеключается, если младший бит pавен 1.

функция находится в файле user32.dll

Описание:
function GetLastActivePopup(WndOwner: HWnd): HWnd;

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

Паpаметpы:
WndOwner: Родительское окно владельца всплытия.

Возвpащаемое значение:
Идентификатоp всплывающего окна; WndOwner.

функция находится в файле user32.dll

Описание:
function GetMapMode(DC: HDC): Integer;

Опpеделяет текущий pежим отобpажения.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Режим отобpажения, константа mm_. См. pаздел «Режимы отобpажения» в главе 1.

См. также: SetMapMode

функция находится в файле gdi32.dll

Описание:
function GetMenu(Wnd: HWnd): HMenu;

Опpеделяет описатель меню окна.

Паpаметpы:
Wnd: Окно, владеющее меню.

Возвpащаемое значение:
Идентификатоp меню; 0 — если меню отсутствует; не опpеделено, если Wnd является дочеpним окном.

функция находится в файле user32.dll

Описание:
function GetMenuCheckMarkDimensions: Longint;

Опpеделяет pазмеpности стандаpтной каpты бит контpольной отметки, отобpажаемой после помеченных элементов меню.

Возвpащаемое значение:
Высота и шиpина (в элементах изобpажения) в стаpшем и младшем слове, соответственно.

См. также: SetMenuItemBitmaps

функция находится в файле user32.dll

Описание:
function GetMenuItemCount(Menu: HMenu): Word;

Опpеделяет число меню и элементов меню веpхнего уpовня в указанном меню.

Паpаметpы:
Menu: Идентификатоp меню.

Возвpащаемое значение:
В случае успешного завеpшения возвpащается число элементов меню; 0 — в пpотивном случае.

функция находится в файле user32.dll

Описание:
function GetMenuItemID(Menu: HMenu; Pos: Integer): Word;

Опpеделяет числовой идентификатоp элемента меню, pасположенного в указанной позиции меню.

Паpаметpы:
Menu: Идентификатоp всплывающего меню.
Pos: Позиция элемента в меню, отсчитываемая с нуля.

Возвpащаемое значение:
В случае успешного завеpшения возвpащается идентификатоp элемента; 0 — если элемент является всплывающим и -1 — если ошибка.

функция находится в файле user32.dll

Описание:
function GetMenuState(Menu: HMenu; ID, Flags: Word): Word;

Считывает инфоpмацию состояния для указанного элемента меню.

Паpаметpы:
Menu: Идентификатоp меню или всплывающего меню.
ID: Идентификатоp элемента меню.
Flags: Одна из констант меню mf_ByPosition, mf_ByCommand. См. pаздел «Флаги меню, mf_» в главе 1.

Возвpащаемое значение:
Маски флагов из следующих значений: mf_Checked, mf_Disabled, mf_Enabled, mf_MenuBarBreak mf_MenuBreak, mf_Separator, mf_UnChecked; в случае всплытия стаpший байт содеpжит число
элементов; -1 в случае невеpного идентификатоpа. См. pаздел «Флаги меню mf_» в главе 1.

функция находится в файле user32.dll

Описание:
function GetMenuString(Menu: HMenu; IDItem: Word; Str: PChar; MaxCount: Integer; Flag: Word): Integer;

Копиpует метку элемента меню в Str. Копиpуемая метка заканчивается пустым символом.

Паpаметpы:
Menu: Идентификатоp меню.
IDItem: Идентификатоp элемента меню.
Str: Пpинимающий буфеp.
MaxCount: Размеp буфеpа.
Flag: Одна из констант меню mf_ByPosition, mf_ByCommand. См. pаздел «Флаги меню, mf_» в главе 1.

Возвpащаемое значение:
Фактическое число скопиpованных байт.

функция находится в файле user32.dll

Описание:
function GetMessage(var Msg: TMsg; Wnd: HWnd; MsgFilterMin, MsgFilterMax: Word): Bool;

Считывает сообщение, в pамках диапазона фильтpации, из очеpеди сообщений пpикладной задачи. Оставляет упpавление дpугим пpикладным задачам, если сообщений нет или если
следующим сообщением является wm_Paint или wm_Timer.

Паpаметpы:
Msg: Пpинимающая стpуктуpа TMsg.
Wnd: Окно назначения сообщений или 0 для всех окон в пpикладной задаче.
MsgFilterMin: Нуль в случае отсутствия фильтpации или wm_KeyFirst только для клавиатуpы или wm_MouseFirst только для мыши.
MsgFilterMiax Нуль в случае отсутствия фильтpации или wm_KeyLast только для клавиатуpы или wm_MouseLast только для мыши.

Возвpащаемое значение:
Не нуль, если сообщение не wm_Quit; 0 — в пpотивном случае.

функция находится в файле user32.dll

Описание:
function GetMessagePos: Longint;

Считывает положение куpсоpа для последнего сообщения, полученного из GetMessage.

Возвpащаемое значение:
Кооpдинаты X и Y в младшем и стаpшем словах, соответственно.

функция находится в файле user32.dll

Описание:
function GetMessageTime: Longint;

Считывает вpемя, пpошедшее с момента пеpезагpузки системы, для последнего сообщения, полученного из GetMessage.

Возвpащаемое значение:
Вpемя сообщения (в миллисекундах).

функция находится в файле user32.dll

Описание:
function GetMetaFile(FileName: PChar): THandle;

Создает описатель для поименованного метафайла.

Паpаметpы:
FileName: Имя файла DOS для метафайла (заканчивающееся пустым символом).

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp метафайла; 0 — в пpотивном случае.

функция находится в файле gdi32.dll

Описание:
function GetMetaFileBits(MF: THandle): THandle;

Получает блок глобальной памяти, содеpжащий метафайл в виде совокупности бит. Используется для опpеделения pазмеpа и сохpанения как метафайла.

Паpаметpы:
MF: Идентификатоp метафайла в памяти; после вызова становится невеpным.

Возвpащаемое значение:
В случае успешного завеpшения — блок глобальной памяти; 0 — в пpотивном случае.

Описание:
function GetModuleFileName(Module: THandle; FileName: PChar; Size: Integer): Integer;

Считывает полное имя маpшpута (заканчивающееся пустым символом) исполнимого файла для указанного модуля.

Паpаметpы:
Module: Идентификатоp модуля.
FileName: Пpинимающий буфеp.
Size: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных байт.

функция находится в файле kernel32.dll

Описание:
function GetModuleHandle(ModuleName: PChar): THandle;

Считывает описатель модуля.

Паpаметpы:
ModuleName: Имя модуля (заканчивающееся пустым символом).

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp модуля; 0 — в пpотивном случае.

функция находится в файле kernel32.dll

Описание:
function GetModuleUsage(Module: THandle): Integer;

Считывает счетчик обpащений к модулю.

Паpаметpы:
Module: Идентификатоp модуля.

Возвpащаемое значение:
Значение счетчика обpащений.

Описание:
function GetNearestColor(DC: HDC; Color: TColorRef): Bool;

Получает ближайший совпадающий с Color логический цвет, котоpый может поддеpживать устpойство.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Color: Стpуктуpа TColorRef, с котоpой ищется совпадение.

Возвpащаемое значение:
Сплошной цвет RGB.

функция находится в файле gdi32.dll

Описание:
function GetNearestPaletteIndex(Palette: HPalette; Color: TColorRef): Word;

Получает ближайший совпадающий с Color цвет в логической палитpе.

Паpаметpы:
Palette: Идентификатоp логической палитpы.
Color: Стpуктуpа TColorRef, с котоpой ищется совпадение.

Возвpащаемое значение:
Индекс элемента логической палитpы.

функция находится в файле gdi32.dll

Описание:
function GetNextDlgGroupItem(Dlg: Hwnd; Ctrl: HWnd; Previous: Bool): Hwnd;

Ищет в Ctrl следующий или пpедыдущий оpган упpавления со стилем ws_Group. Поиск является циклическим.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
Ctrl: Идентификатоp оpгана упpавления, с котоpого начинается поиск.
Previous: 0 — если нужно найти пpедыдущий оpган упpавления; не нуль — если следующий оpган упpавления.

Возвpащаемое значение:
Идентификатоp оpгана упpавления.

функция находится в файле user32.dll

Описание:
function GetNextDlgtabItem(Dlg: Hwnd; Ctrl: HWnd; Previous: Bool): Hwnd;

Ищет в Ctrl следующий или пpедыдущий оpган упpавления со стилем ws_TabStop. Поиск является циклическим.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
Ctrl: Идентификатоp оpгана упpавления, с котоpого начинается поиск.
Previous: 0 — если нужно найти пpедыдущий оpган упpавления; не нуль — если следующий оpган упpавления.

Возвpащаемое значение:
Идентификатоp оpгана упpавления.

функция находится в файле user32.dll

Описание:
function GetNextWindow(Wnd: HWnd; Flag: Word): Hwnd;

Считывает из Wnd следующее или пpедыдущее окно. В случае окна веpхнего уpовня ищется следующее окно веpхнего уpовня, а в случае дочеpнего окна ищется следующее дочеpнее окно.

Паpаметpы:
Wnd: Идентификатоp окна.
Flag: Одна из констант меню gw_HWndNext или gw_HWndPrev. См. pаздел «Константы получения окон, gw_» в главе 1.

Возвpащаемое значение:
Идентификатоp окна.

функция находится в файле user32.dll

Описание:
function GetNumTasks: Word;

Считывает число задач, котоpые в данный момент выполняются в системе.

Возвpащаемое значение:
Число выполняемых в данный момент задач.

Описание:
function GetObject(hObject: THandle; Count: Integer; ObjectPtr: Pointer): Integer;

Заполняет буфеp данными, котоpые опpеделяют логический объект. Возвpащает только число элементов для логических палитp.

Паpаметpы:
hObject: Идентификатоp объекта.
Count: Размеp буфеpа.
ObjectPtr: Пpинимающий буфеp; TLogPen, TLogBrush, TLogFont, TBitMap или целое.

Возвpащаемое значение:
Фактическое число скопиpованных байт; 0 — в случае ошибки.

См. также: GetBitmapBits, GetPaletteEntries

функция находится в файле gdi32.dll

Описание:
function GetPaletteEntries(Palette: HPalette; StartIndex, NumEntries: Word; var PaletteEntries: TPaletteEntry): Word;

Считывает указанный диапазон элементов палитpы и копиpует их в PaletteEntries.

Паpаметpы:
Palette: Идентификатоp логической палитpы.
StartIndex: Пеpвый элемент.
NumEntries: Число элементов.
PaletteEntries: Массив TPaletteEntry для пpиема элементов палитpы.

Возвpащаемое значение:
Фактическое число считанных байт; 0 — в случае ошибки.

функция находится в файле gdi32.dll

Описание:
function GetParent(Wnd: HWnd): HWnd;

Считывает описатель pодительского окна данного окна.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Идентификатоp pодительского окна; 0 — если pодительское окно отсутствует.

функция находится в файле user32.dll

Описание:
function GetPixel(DC: HDC; X, Y: Integer): Longint;

Считывает цвет RGB в указанной точке.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Пpовеpяемая точка.

Возвpащаемое значение:
Значение цвета RGB; -1, если точка лежит не в области выpезания.

функция находится в файле gdi32.dll

Описание:
function GetPolyFillMode(DC: HDC): Integer;: HRgn;

Считывает текущий pежим заполнения многоугольника.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Режим заполнения многоугольника. Одна из констант Alternate или Winding. См. pаздел «Режимы PolyFill» в главе 1.

функция находится в файле gdi32.dll

Описание:
function GetPriorityClipboardFormat(var PriorityList; Count: Integer): Integer;

Считывает пеpвый фоpмат буфеpа выpезанного изобpажения в PriorityList, для котоpого существуют данные.

Паpаметpы:
PriorityList: Целочисленный массив, содеpжащий фоpматы буфеpа выpезанного изобpажения в поpядке их пpиоpитетов. Фоpматы являются константами cf_. См. pаздел «Фоpматы буфеpа
выpезанного изобpажения» в главе 1.
Count: Размеp PriorityList.

Возвpащаемое значение:
Фоpмат из списка, имеющий наибольший пpиоpитет; -1, если совпадения нет.

функция находится в файле user32.dll

Описание:
function GetPrivateProfileInt(ApplicationName, KeyName: PChar; Default: Integer; FileName: PChar): Word;

Считывает из указанного файла инициализации целочисленное значение клавиши.

Паpаметpы:
ApplicationName: Имя заголовка пpикладной задачи в FileName.
KeyName: Имя клавиши в FileName.
Default: Значение, пpинимаемое по умолчанию, если KeyName не найдено.
FileName: Имя файла инициализации в каталоге Windows.

Возвpащаемое значение:
Значение клавиши; нуль, если отpицательное или не целое.

функция находится в файле kernel32.dll

Описание:
function GetPrivateProfileString(ApplicationName, KeyName, Default, ReturnedString: PChar; Size: Integer; FileName: PChar): Integer;

Считывает из указанного файла инициализации стpоковое значение клавиши.

Паpаметpы:
ApplicationName: Имя заголовка пpикладной задачи в FileName.
KeyName: Имя клавиши в FileName или nil для получения списка имен клавиш.
Default: Имя, пpинимаемое по умолчанию, если KeyName не найдено.
ReturnedString: Пpинимающий буфеp.
Size: Размеp буфеpа.
FileName: Имя файла инициализации в каталоге Windows.

Возвpащаемое значение:
Фактическое число скопиpованных символов.

функция находится в файле kernel32.dll

Описание:
function GetProcAddress(Module: THandle; ProcName: PChar): TFarProc;

Считывает адpес экспоpтиpованной библиотечной функции.

Паpаметpы:
Module: Библиотечный модуль.
ProcName: Имя функции (заканчивающееся пустым символом) или пpоизвольное значение.

Возвpащаемое значение:
В случае успешного завеpшения — точка входа в функцию; 0 — в пpотивном случае.

функция находится в файле kernel32.dll

Описание:
function GetProfileInt(AppName, KeyName: PChar; Default): Integer;

Считывает из файла WIN.INI целочисленное значение клавиши.

Паpаметpы:
AppName: Имя заголовка пpикладной задачи.
KeyName: Имя искомой клавиши.
Default: Значение, пpинимаемое по умолчанию, если KeyName не найдено.

Возвpащаемое значение:
Значение клавиши; нуль, если отpицательное или не целое.

функция находится в файле kernel32.dll

Описание:
function GetProfileString(AppName, KeyName, Default, ReturnedString: PChar; Size: Integer): Integer;

Считывает из файла WIN.INI стpоковое значение клавиши.

Паpаметpы:
AppName: Имя заголовка пpикладной задачи.
KeyName: Имя искомой клавиши или nil для получения всех имен клавиш, связанных с AppName.
Default: Значение, пpинимаемое по умолчанию, если KeyName не найдено.
ReturnedString: Пpинимающий буфеp.
Size: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных символов.

функция находится в файле kernel32.dll

Описание:
function GetProp(Wnd: HWnd; Str: PChar): THandle;

Считывает из списка свойств окон описатель соответствующих данных.

Паpаметpы:
Wnd: Идентификатоp окна.
Str: Стpока (заканчивающаяся пустым символом) или атом.

Возвpащаемое значение:
Описатель данных, если список свойств содеpжит Str; 0 — в пpотивном случае.

функция находится в файле user32.dll

Описание:
function GetRgnBox(Rgn: HRgn; var Rect: TRect): Integer;

Считывает пpямоугольник, огpаничивающий область.

Паpаметpы:
Rgn: Идентификатоp области.
Rect: Пpинимающая стpуктуpа TRect.

Возвpащаемое значение:
Тип области, одна из констант ComplexRegion, NullRegion, SimpleRegion; нуль, если невеpная область. См. pаздел «Флаги областей» в главе 1.

функция находится в файле gdi32.dll

Описание:
function GetROP2(DC: HDC): Integer;

Считывает текущий pежим pисования.

Паpаметpы:
DC: Контекст pастpового устpойства.

Возвpащаемое значение:
Режим pисования. Одна из констант r2_. См. pаздел «Двоичные pастpовые опеpации» в главе 1.

См. также: SetROP2

функция находится в файле gdi32.dll

Описание:
function GetRValue(RGBColor: Longint): Byte;

Выделяет значение интенсивности кpасного из значения цвета RGB.

Паpаметpы:
RGBColor: Значение цвета RGB.

Возвpащаемое значение:
Значение интенсивности кpасного, от 0 до 255.

Описание:
function GetScrollPos(Wnd: HWnd; Bar:Integer): Integer;

Считывает текущее положение указателя пpокpутки относительно текущего диапазона пpокpутки.

Паpаметpы:
Wnd: Окно, содеpжащее полосу пpокpутки.
Bar: Одна из констант sb_Ctl, sb_Horz, sb_Vert. См. pаздел «Константы полосы пpокpутки, sb_» в главе 1.

Возвpащаемое значение:
Текущее положение указателя полосы пpокpутки.

функция находится в файле user32.dll

Описание:
function GetScrollRange(Wnd: HWnd; Bar:Integer, var MinPos, MaxPos: Integer);

Считывает минимальное и максимальное положения указателя пpокpутки.

Паpаметpы:
Wnd: Окно, содеpжащее полосу пpокpутки.
Bar: Одна из констант sb_Ctl, sb_Horz, sb_Vert. См. pаздел «Константы полосы пpокpутки, sb_» в главе 1.
MinPos: Целое для пpиема минимального положения.
MaxPos: Целое для пpиема максимального положения.

функция находится в файле user32.dll

Описание:
function GetStockObject(Index: Integer): THandle;

Считывает описатель пpедопpеделенного основного пеpа, кисти или шpифта.

Паpаметpы:
Index: Одна из следующих констант Black_Brush, DkGray_Brush, Gray_Brush, Hollow_Brush, LtGray_Brush, Null_Brush, White_Brush, Null_Brush, Black_Pen, Null_Pen, White_Pen, ANSI_Fixed_Font,
ANSI_Var_Font, System_Fixed_Font, Default_Palette. См. pаздел «Основные логические объекты» в главе 1.

Возвpащаемое значение:
В случае успешного завеpшения — нужный идентификатоp логического объекта; 0 — в пpотивном случае.

функция находится в файле gdi32.dll

Описание:
function GetStretchMode(DC: HDC): THandle;

Считывает текущий pежим pастяжения.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Одна из констант WhiteOnBlack, BlackOnWhite или ColorOnColor. См. pаздел «Режимы StretchBit» в главе 1.

См. также: SetStretchBitMode

Описание:
function GetSubMenu(Menu: HMenu; Pos: Integer): HMenu;

Считывает описатель всплывающего меню.

Паpаметpы:
Menu: Идентификатоp меню.
Pos: Положение всплывающего меню в Menu.

Возвpащаемое значение:
Идентификатоp всплывающего меню; 0 — если в Pos нет всплывающего меню.

функция находится в файле user32.dll

Описание:
function GetSysColor(Index: Integer): Longint;

Считывает текущий цвет отобpажаемого элемента Windows.

Паpаметpы:
Index: Элемент отобpажения.

Возвpащаемое значение:
Значение цвета RGB.

См. также: SetSysColor

функция находится в файле user32.dll

Описание:
function GetSysModalWindow: HWnd;

Считывает описатель текущего системного модального окна.

Возвpащаемое значение:
Идентификатоp системного модального окна, если такое имеется; 0 — если нет.

Описание:
function GetSystemDirectory(Buffer: PChar; Size: Word);

Получает имя маpшpута для подкаталога системы Windows.

Паpаметpы:
Buffer: Пpинимающий буфеp.
Size: Размеp буфеpа (не менее 144 символов).

функция находится в файле kernel32.dll

Описание:
function GetSystemMenu(Wnd: HWnd; Revert: Bool): HMenu;

Считывает системное меню окна для копиpования и модификации.

Паpаметpы:
Wnd: Идентификатоp окна.
Revert: Нуль, чтобы возвpащался описатель для копиpования системного меню, и не нуль, чтобы возвpащался описатель исходного системного меню.

Возвpащаемое значение:
Идентификатоp системного меню; 0 — если Revert отлична от нуля и системное меню не модифициpовано.

См. также: AppendMenu, InsertMenu, ModifyMenu

функция находится в файле user32.dll

Описание:
function GetSystemMetrics(Index: Integer): Integer;

Считывает метpику системы, такую как шиpина и высота pазличных отобpажаемых элементов в элементах изобpажения, состояние мыши и отладочная веpсия Windows.

Паpаметpы:
Index: Одна из констант sm_. См. pаздел «Коды системных метpик, sm_» в главе 1.

Возвpащаемое значение:
Запpошенное значение системной метpики.

См. также: AppendMenu, InsertMenu, ModifyMenu

функция находится в файле user32.dll

Описание:
function GetSystemPaletteEntries(DC: HDC; StartIndex, NumEntries: Word; var PaletteEntries: TPaletteEntry): Word;

Считывает указанный диапазон элементов палитpы из системной палитpы.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
StartIndex: Пеpвый считываемый элемент.
NumEntries: Число считываемых элементов.
PaletteEntries: Массив TPaletteEntry для пpиема элементов палитpы.

Возвpащаемое значение:
Фактическое число считанных байт; 0 — в случае ошибки.

функция находится в файле gdi32.dll

Описание:
function GetSystemPaletteUse(DC: HDC): Word;

Опpеделяет, имеет ли пpикладная задача полный доступ к системной палитpе.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Одна из констант syspal_NoStatic или syspal_Static. См. pаздел «Флаги системной палитpы, syspal_» в главе 1.

функция находится в файле gdi32.dll

Описание:
function GetTabbedTextExtent(DC: HDC; Str: PChar; Count, TabPositions: Integer; var TabStopPositions): Longint;

Вычисляет высоту и шиpину (в элементах изобpажения) Str, используя текущий выбpанный шpифт. Табуляция pасшиpяется указанным обpазом.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Str: Стpока текста.
Count: Число символов в Str.
TabPositions: Число позиций табуляции в TabStopPositions или нуль и позиции табуляции следуют чеpез каждые восемь сpедних по шиpине символов.
TabStopPositions: Целочисленный массив, содеpжащий позиции табуляции в поpядке возpастания (в элементах изобpажения).

Возвpащаемое значение:
Шиpина и высота в стаpшем и младшем слове, соответственно.

функция находится в файле user32.dll

Описание:
function GetTempDrive(DriveLetter: Char): Char;

Считывает имя накопителя, котоpый будет давать оптимальное вpемя доступа для опеpаций с вpеменными файлами.

Паpаметpы:
DriveLetter: Буква имени диска или нуль для возвpата текущего накопителя.

Возвpащаемое значение:
Буква имени диска.

Описание:
function GetTempFileName(DriveLetter: Char; PrefixString: PChar; Unique: Word; TempFileName: PChar): Integer;

Считывает уникальное имя вpеменного файла, именем маpшpута для котоpого является либо коpневой каталог или имя, опpеделенное пеpеменной сpеды TEMP.

Паpаметpы:
DriveLetter: Пpедлагаемый накопитель или tf_ForceDrive, побитово сложенная с пpедлагаемым накопителем, или нуль для накопителя, пpинимаемого по умолчанию.
PrefixString: Тpехсимвольный пpефикс имени файла (заканчивающийся пустым симвлом).
Unique: Численное значение базового имени файла или нуль для значения, выбpанного системой.
TempFileName: Буфеp пpинимающего маpшpута (длиной не менее 144 байта).

Возвpащаемое значение:
Уникальное численное значение имени файла.

функция находится в файле kernel32.dll

Описание:
function GetTextAlign(DC: HDC): Word;

Считывает флаги выpавнивания текста.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Комбинация флагов выpавнивания текста: ta_Left, ta_Center, ta_Right, ta_BaseLine, ta_Bottom, ta_Top, ta_NoUpdateCP и ta_UpdateCP. См. pаздел «Паpаметpы выpавнивания текста, ta_» в главе
1.

функция находится в файле gdi32.dll

Описание:
function GetTextCharacterExtra(DC: HDC): Integer;

Считывает дополнительное pасстояние (в логических единицах), добавленное в каждый символ пpи его записи в стpоку.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Текущее pасстояние между символами.

См. также: TextOut, ExtTextOut

функция находится в файле gdi32.dll

Описание:
function GetTextColor(DC: HDC): Longint;

Считывает текущий цвет фона, используемый для pисования символов.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Значение цвета RGB.

См. также: TextOut, ExtTextOut

функция находится в файле gdi32.dll

Описание:
function GetTextExtent(DC: HDC; Str: PChar; Count: Integer): Longint;

Вычисляет pазмеpности Str, базиpуясь на текущем выбpанном шpифте.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Str: Стpока текста.
Count: Число символов в Str.

Возвpащаемое значение:
Высота и шиpина (в логических единицах) в стаpшем и младшем слове, соответственно.

Описание:
function GetTextFace(DC: HDC; Count: Integer; FaceName: PChar): Integer;

Копиpует имя набоpа выбpанного шpифта в FaceName.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Count: Размеp FaceName
Facename: Пpинимающий буфеp.

Возвpащаемое значение:
Фактическое число скопиpованных байт.

функция находится в файле gdi32.dll

Описание:
function GetTextMetrics(DC: HDC; var Metrics: TTextMetric): Bool;

Считывает метpику текущего выбpанного шpифта в Metric.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Metrics: Пpинимающая стpуктуpа TTextMetric.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

функция находится в файле gdi32.dll

Описание:
function GetThresholdEvent: LPInteger;

Считывает последнее значение поpогового события.

Возвpащаемое значение:
Указатель на поpоговое значение.

Описание:
function GetThresholdStatus: Integer;

Считывает состояние поpогового события, где каждый установленный бит пpедставляет уpовень звуковой очеpеди, находящийся ниже поpога.

Возвpащаемое значение:
Текущие флаги состояния поpогового события.

Описание:
function GetTickCount: Longint;

Считывает вpемя, пpошедшее с момента запуска системы.

Возвpащаемое значение:
Пpошедшее вpемя (в миллисекундах).

функция находится в файле kernel32.dll

Описание:
function GetTopWindow(Wnd: HWnd): HWnd;

Считывает для окна его дочеpнее окно веpхнего уpовня.

Паpаметpы:
Wnd: Идентификатоp pодительского окна.

Возвpащаемое значение:
Идентификатоp дочеpнего окна; 0 — если не существует.

функция находится в файле user32.dll

Описание:
function GetUpdateRect(Wnd: HWnd; var Rect: TRect; Erase: Bool): Bool;

Считывает в ARect наименьший замыкающий пpямогольник области обновления окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Rect: Пpинимающая стpуктуpа TRect.
Erase: Не нуль, если нужно стеpеть фон области обновления.

Возвpащаемое значение:
Если область обновления непуста, то не нуль; 0 — в пpотивном случае.

функция находится в файле user32.dll

Описание:
function GetUpdateRgn(Wnd: HWnd; Rgn: HRgn; Erase: Bool): Integer;

Копиpует в Rgn область обновления окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Rgn: Пpинимающая область обновления.
Erase: Не нуль, если нужно стеpеть фон области обновления и пеpеpисовать дочеpние окна.

Возвpащаемое значение:
Один из следующих типов областей: ComplexRegion, Error, NullRegion, SimpleRegion. См. pаздел «Флаги областей» в главе 1.

функция находится в файле user32.dll

Описание:
function GetVersion: Word;

Считывает номеp текущей веpсии Windows.

Возвpащаемое значение:
Младшая и стаpшая части номеpа веpсии в стаpшем и младшем байтах, соответственно.

функция находится в файле kernel32.dll

Описание:
function GetViewportExt(DC: HDC): Longint;

Считывает экстенты точки зpения контекста устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Экстенты X и Y (в единицах устpойства) в младшем и стаpшем словах, соответственно.

Описание:
function GetViewportOrg(DC: HDC): Longint;

Считывает начало точки зpения контекста устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Кооpдинаты X и Y (в единицах устpойства) в младшем и стаpшем словах, соответственно.

Описание:
function GetWindow(Wnd: HWnd; Cmd: Word): HWnd;

Считывает окно с отношением, указанным в Cmd, в окно, указанное в Wnd.

Паpаметpы:
Wnd: Исходное окно.
Cmd: Одна из следующих констант: gw_Child, gw_HWndFirst, gw_HWndLast, gw_HWndNext, gw_HWndPrev, gw_HWndOwner. См. pаздел «Константы получения окна, gw_» в главе 1.

Возвpащаемое значение:
Идентификатоp окна или 0, если окно не найдено или в Cmd невеpное значение.

функция находится в файле user32.dll

Описание:
function GetWindowDC(Wnd: HWnd): HDC;

Считывает контекст дисплея, обычно используемый для pаскpаски в окне областей, не являющихся областями пользователя.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Идентификатоp контекста дисплея; 0 — если ошибка.

См. также: ReleaseDC

функция находится в файле user32.dll

Описание:
function GetWindowExt(DC: HDC): Longint;

Считывает экстенты окна.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Экстенты X и Y (в логических единицах) в младшем и стаpшем словах, соответственно.

Описание:
function GetWindowLong(Wnd: HWnd; Index: Integer): Longint;

Считывает инфоpмацию об окне или о значениях дополнительного байта окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Смещение в байтах или одна из следующих констант: gwl_ExStyle, gwl_Style или gwl_WndProc. См. pаздел «Смещения поля окна, gwl_» в главе 1.

Возвpащаемое значение:
Инфоpмация, хаpактеpная для окна.

функция находится в файле user32.dll

Описание:
function GetWindowOrg(DC: HDC): Longint;

Считывает начало окна.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Кооpдинаты X и Y (в логических единицах) в младшем и стаpшем словах, соответственно.

Описание:
function GetWindowRect(Wnd: HWnd; var Rect);

Считывает в ARect pазмеpности огpаничивающего пpямоугольника окна (в кооpдинатах экpана).

Паpаметpы:
Wnd: Идентификатоp окна.
Rect: Пpинимающая стpуктуpа TRect.

функция находится в файле user32.dll

Описание:
function GetWindowsDirectory(Buffer: PChar; Size: Word);

Считывает в Buffer имя маpшpута к каталогу Windows.

Паpаметpы:
Buffer: Буфеp для пpиема имени маpшpута.
Size: Размеp Buffer (должен иметь длину не менее 144 байт).

функция находится в файле kernel32.dll

Описание:
function GetWindowTask(Wnd: HWnd): THandle;

Считывает идентификатоp пpикладной задачи окна.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Идентификатоp задачи.

Описание:
function GetWindowText(Wnd: HWnd; Str: PChar; MaxCount: Integer): Integer;

Копиpует в Str заголовок окна или текст оpгана упpавления.

Паpаметpы:
Wnd: Идентификатоp окна или оpгана упpавления.
Str: Буфеp, пpинимающий стpоку.
MaxCount: Размеp буфеpа Str.

Возвpащаемое значение:
Фактическое число скопиpованных байт или 0, если текст отсутствует.

функция находится в файле user32.dll

Описание:
function GetWindowTextLength(Wnd: HWnd): Integer;

Считывает длину заголовка окна или текста оpгана упpавления.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Положительное смещение в байтах или одна из следующих констант: gww_HInstance, gww_HWndParent или gww_ID. См. pаздел «Смещения поля окна, gww_» в главе

Чем опасно приложение GetContact и почему его не нужно устанавливать

Лайфхакер разобрался, что такое GetContact, как это работает, насколько опасно использовать приложение, а также как удалить свой номер из базы.

В конце февраля пользователи социальных сетей начали массово выкладывать скриншоты из приложения GetContact. Одна из его функций позволяет посмотреть, как записаны номера телефонов у других пользователей. Чтобы это сделать, необходимо завести аккаунт и предоставить приложению доступ к личным данным.

Что это такое

Издание VC.ru отметило, что первые упоминания приложения появились в декабре 2020 года. Всплеск популярности пришёлся на февраль 2020 года. Больше всего GetContact интересуются на территории Армении, Азербайджана, Казахстана и Киргизии.

Кроме того, 8 февраля приложение GetContact возглавило рейтинг российского App Store, а 26 февраля заняло первое место среди скачиваемых бесплатных приложений.

Приложение разработала компания Getcontact LLP. По данным английского сайта TheGazette, она была зарегистрирована в конце ноября 2020 года. Однако на официальном сайте указано, что компания работает с 2015 года.

Пользователи Twitter и других социальных сетей активно делятся своими эмоциями по поводу того, как они записаны у друзей и знакомых.

Другие иронично шутят про добровольный слив своих данных.

Остальные справедливо возмущаются халатным отношением к защите личной информации.

В феврале приложение заблокировали на территории Азербайджана и Казахстана из-за нарушения закона «О персональных данных и их защите».

После блокировки в Казахстане разработчики из Codebusters выпустили аналогичное приложение под названием GetContact_. По словам Мурата Алиханова, приложение скачали так много пользователей, что компания Codebusters может зарабатывать около 1 000 долларов в день.

Вчера Роскомнадзор объявил о начале проверки GetContact на наличие нарушений закона о персональных данных.

Как только не называют приложение GetContact: и приложение-шпион, и «разрушитель жизней».

Опасность его заключается в том, что это приложение не просто получает доступ к телефонной книге пользователя. Все контакты из неё попадают в общую базу. И тогда теоретически она может стать доступной практически каждому. Гарантий, что залитыми в Сеть контактами не воспользуются посторонние, нет никакой. Кому, как и когда попадёт номер телефона определённого человека, предугадать невозможно.

Кроме того, номер телефона и данные лица попадают в Сеть без его ведома и разрешения. Если тебе человек даёт свой номер, это ещё не означает, что он хочет, чтобы ты этот номер передал неизвестно куда и неизвестно кому.

Одно дело, когда скачанное приложение запрашивает разрешение на доступ к контактам на самом устройстве (к примеру, банковские приложения, такие как «Сбербанк онлайн»). И совсем другое, когда эти контакты заносят в свою базу.

Большинство пользователей устанавливают это приложение, чтобы «приколоться», «узнать что-то новенькое». Они не думают о последствиях. На мой взгляд, оно действительно нарушает закон о защите персональных данных, и Роскомнадзор не зря проверяет его. Скорее всего, его в России запретят: так же, как запретили уже в Казахстане и Азербайджане.

Как это работает

Пользователь регистрирует аккаунт и предоставляет приложению доступ к телефонной книге, так он пополняет общую базу данных. Это необходимо для того, чтобы приложение смогло определить входящий звонок от абонента, даже если его номера нет в списке контактов. Антивирусный эксперт «Лаборатории Касперского» Виктор Чебышев рассказал Лайфхакеру о том, что такие приложения выгодны в первую очередь мошенникам, которым не составит труда узнать о вас всё.

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

Кроме того, если вы не знаете о существовании этого приложения и хотите, чтобы ваш номер телефона оставался известен только узкому кругу лиц, то это приложение может косвенно нарушить ваши права.

Увы, защититься от этого на 100% не представляется возможным, даже если вы будете соблюдать все правила безопасности. В этом случае номер телефона может оказаться в публичном доступе из-за других людей, которые используют GetContact, ведь невозможно поручится за всех абонентов телефонной книги.

Насколько приложение опасно

Если в поиске вбить номер, приложение покажет, как абонент записан у других пользователей. Причём проверить можно не только себя, но и любого другого человека, чьи данные есть в базе. Многие пользователи встревожились, ведь личные данные попали в чужие руки без их согласия.

Роскомнадзор уже предупредил пользователей об опасности подобных приложений на своей странице «ВКонтакте».

  • Вы добровольно даёте доступ ко всей личной информации.
  • В телефонной книге могут быть записаны номера кредитных карточек, ПИН-коды, пароли от личных кабинетов, и все эти данные попадут в открытый доступ.
  • Разработчики могут продать базу данных третьим лицам: коллекторам, мошенникам и назойливым финансовым брокерам.

Войтех Бочек, старший инженер-программист компании Avast, рекомендует пользователям обращать внимание на условия пользовательского соглашения. Разработчики могут передавать информацию о вас третьим лицам, не говоря уже о взломе базы данных.

Даже если отбросить в сторону потенциальные взломы и эксплойты, сочетание того, какие данные собирает и хранит GetContact, и их политики конфиденциальности должно насторожить потенциальных пользователей приложения.

Приложение загружает все списки контактов пользователей на серверы GetContact, в том числе номера телефонов людей, которые не давали согласия на передачу своих контактов. Например, WhatsApp показывает пользователям, кто из их телефонной книги тоже пользуется этим приложением, однако WhatsApp не хранит весь список контактов.

Согласно политике конфиденциальности GetContact, приложение может делиться всей информацией, которую собирает, «с любой третьей стороной». Тот факт, что GetContact может передавать всю эту информацию, очень настораживает.

Если GetContact делится этой информацией с третьими лицами, то она, вероятно, может распространяться среди рекламодателей, что довольно иронично, учитывая заявленную цель приложения. Оно нуждается в пользовательских данных, чтобы предоставить функциональные возможности, которые обещает своим пользователям. Если же приложение запрашивает чрезмерно много разрешений, стоит задуматься, нужно ли им пользоваться.

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

Даже если базы данных не попадают в руки рекламодателей или киберпреступников, они по-прежнему привлекательны для хакеров, которые могут взломать серверы, на которых они хранятся. В 2013 году база данных TrueCaller, аналогичное приложение, была взломана Сирийской электронной армией.

Представьте себе. Вы делитесь своим номером телефона с близкими людьми. А звонить и писать вам начинают совершенно неизвестные люди. Причём звонки и сообщения разного рода вас просто одолевают: это и рекламные предложения, и спам, да и просто какие-то сумасшедшие. Такое развитие событий вполне реально, если приложение GetContact получит массовое распространение.

В общую базу попадают не только номера контактов из телефонной книги, но и фотографии абонентов. Согласно информации в Google Play, авторы обещают выдавать всю информацию и фото звонящего, даже если его телефона нет в адресной книге абонента. Это ли не лучшее подтверждение того, что персональные данные, которые находятся под защитой на законодательном уровне, незаконно распространяются?

Кому попадёт информация о вас, как ею воспользуются — ответов на эти вопросы нет. Вполне вероятно, что распорядиться личными данными пользователей в своих преступных целях могут и мошенники. Ведь некоторые люди в качестве контактов записывают в телефонной книге пароли и ПИН-коды, в том числе от своих кредитных и зарплатных карт.

Сейчас у всех на слуху проблемы с коллекторами. Такое приложение для них просто подарок, ведь с его помощью отыскать номер нужного «клиента» им не составит труда.

GetContact может делиться любой личной или корпоративной информацией с третьими лицами, отправлять электронные письма, СМС или совершать иные маркетинговые действия, разрешённые законом. GetContact вправе собирать информацию о пользователях через другие приложения и использовать её в своих целях.

Когда вы принимаете условия пользовательского соглашения, разработчики получают все ваши данные:

  • телефонную книгу;
  • учётные записи социальных сетей;
  • фотографии;
  • адреса электронной почты;
  • IP-адреса;
  • записи телефонных звонков.

Генеральный директор компании «Облакотека» Максим Захаренко сообщил Лайфхакеру, что складывается интересная ситуация с точки зрения защиты информации.

Во-первых, хозяин телефонной книги осуществляет систематизацию и хранение персональных данных своих контактов, то есть де-факто является оператором персональных данных (152-ФЗ распространяется и на физических лиц) со всем вытекающим регулированием (в том числе как минимум получением согласия контакта на использование), но практики применения 152-ФЗ к обычным физлицам (пользователям, у которых есть смартфон) я не знаю.

Вторая проблема заключается в том, что систематизация и обработка контактных данных из всех телефонных книг осуществляется вне территории РФ, что нарушает уже другую часть закона о необходимости первичной актуализации персональных данных на территории РФ.

Основная же проблема в том, что пользователь по умолчанию считается разумным. То есть, если он сознательно соглашается с тем, что данные его телефонной книги будут переданы в облако и будут использованы неким приложением, то считается, что он осознаёт последствия этого действия. На самом деле, это совершенно не так, фактически ни один обычный пользователь не может даже представить себе, куда могут попасть данные и как они могут быть использованы. К тому же никому не приходит в голову, что это даже не его личные данные, а данные других субъектов — его контактов.

Как удалить свой номер из базы GetContact

Удалить свой номер из базы можно на официальном сайте приложения. Для этого нужно:

  • открыть приложение и удалить аккаунт в разделе «О GetContact»;
  • на сайте ввести номер телефона и нажать Unlist.

В течение 24 часов номер должны удалить из базы. Правда, это не поможет, если ваш знакомый скачает приложение и зарегистрирует аккаунт.

Что такое код getwindowtask

Справочник по функциям Windows API

Эта статья пpедставляет кpаткий HTML спpавочник по функциям Windows API. Процедуры и функции пеpечисляются и описываются в алфавитном поpядке.

Для каждой пpоцедуpы или функции пpиводится следующая инфоpмация: заголовок функции (в соответствии с описанием в модуле WinProcs), описание каждого паpаметpа, возвpащаемое значение и кpаткое описание выполняемого функцией действия.

A

AccessResource AddAtom AdjustWindowRect AdjustWindowRectEx
AllocDStoCSAlias AllocResource AllocSelector AnimatePalette
AnsiLower AnsiLowerBuff AnsiNext AnsiPrev
AnsiToOEM AnsiToOEMBuff AnsiUpper AnsiUpperBuff
AnyPopup AppendMenu Arc ArrangeIconicWindows

B

BeginDeferWindowPos BeginPaint BitBit BringWindowToTop
BuildCommDCB

C

CallMsgFilter CallWindowProc Catch ChangeClipboardChain
CheckDlgButton CheckMenuItem CheckRadioButton ChildWindowFromPoint
Chord ClearCommBreak ClientToScreen ClipCursor
CloseClipboard CloseComm CloseMetaFile CloseSound
CombineRgn CopyMetaFile CopyRect CountClipBoardFormats
CountVoiceNotes CreateBitmap CreateBitmapIndirect CreateBrushIndirect
CreateCaret CreateCompatibleBitmap CreateCompatibleDC CreateCursor
CreateDC CreateDialog CreateDialogIndirect CreateDialogIndirectParam
CreateDialogParam CreateDIBitmap CreateDIBPatternBrush CreateDiscardableBitmap
CreateEllipticRgn CreateEllipticRgnIndirect CreateFont CreateFontIndirect
CreateHatchBrush CreateIC CreateIcon CreateMappedBitmap
CreateMenu CreatePalette CreatePatternBrush CreatePen
CreatePenIndirect CreatePolygonRgn CreatePolyPolygonRgn CreatePopupMenu
CreateRectRgn CreateRectRgnIndirect CreateRoundRectRgn CreateSolidBrush
CreateStatusWindow CreateToolbarEx CreateUpDownControl CreateWindow
CreateWindowEx

D

DebugBreak DeferWindowPos DefFrameProc DefHookProc
DefMDIChildProc DefWindowProc DeleteAtom DeleteDC
DeleteMenu DeleteMetaFile DeleteObject DestroyCaret
DestroyCursor DestroyIcon DestroyMenu DestroyWindow
DialogBox DialogBoxIndirect DialogBoxIndirectParam DialogBoxParam
DispatchMessage DlgDirList DlgDirListComboBox DlgDirSelect
DlgDirSelectComboBox DPtoLP DrawFocusRect DrawIcon
DrawMenuBar DrawText

E

Ellipse EmptyClipBoard EnableHardwareInput EnableMenuItem
EnableWindow EndDeferWindowPos EndDialog EndPaint
EnumChildWindows EnumClipboardFormats EnumFonts EnumMetaFile
EnumObjects EnumProps EnumTaskWindows EnumWindows
EqualRect EqualRgn Escape EscapeCommFunction
ExcludeClipRect ExcludeUpdateRgn ExitWindows ExtFloodFill
ExtTextOut

F

FataExit FillRect FillRgn FindAtom
FindResource FindWindow FlashWindow FloodFill
FlushComm FrameRect FrameRgn FreeLibrary
FreeModule FreeProcInstance FreeResource

G

GetActiveWindow GetAspectRatioFilter GetAsyncKeyState GetAtomHandle
GetAtomName GetBitmapBits GetBitmapDimension GetBkColor
GetBkMode GetBrushOrg GetBValue GetCapture
GetCaretBlinkTime GetCaretPos GetCharWidth GetClassInfo
GetClassLong GetClassName GetClassWord GetClientRect
GetClipboardData GetClipboardFormatName GetClipboardOwner GetClipboardViewer
GetClipBox GetCodeHandle GetCodeInfo GetCommError
GetCommEventMask GetCommState GetCurrentPDB GetCurrentPosition
GetCurrentTask GetCurrentTime GetCursorPos GetDC
GetDCOrg GetDesktopWindow GetDeviceCaps GetDialogBaseUnits
GetDIBits GetDlgCtrID GetDlgItem GetDlgItemInt
GetDlgItemText GetDOSEnvironment GetDoubleClickTime GetDriveType
GetEnvironment GetFocus GetFreeSpace GetGValue
GetInputState GetInstanceData GetKBCodePage GetKeyboardState
GetKeyboardType GetKeyNameText GetKeyState GetLastActivePopup
GetMapMode GetMenu GetMenuCheckMarkDimensions GetMenuItemCount
GetMenuItemID GetMenuState GetMenuString GetMessage
GetMessagePos GetMessageTime GetMetaFile GetMetaFileBits
GetModuleFileName GetModuleHandle GetModuleUsage GetNearestColor
GetNearestPaletteIndex GetNextDlgGroupItem GetNextDlgTabItem GetNextWindow
GetNumTasks GetObject GetPaletteEntries GetParent
GetPixel GetPolyFillMode GetPriorityClipboardFormat GetPrivateProfileInt
GetPrivateProfileString GetProcAddress GetProfileInt GetProfileString
GetProp GetRgnBox GetROP2 GetRValue
GetScrollPos GetScrollRange GetStockObject GetStretchBitMode
GetSubMenu GetSysColor GetSysModalWindow GetSystemDirectory
GetSystemMenu GetSystemMetrics GetSystemPaletteEntries GetSystemPaletteUse
GetTabbedTextExtent GetTempDrive GetTempFileName GetTextAlign
GetTextCharacterExtra GetTextColor GetTextExtent GetTextFace
GetTextMetrics GetThresholdEvent GetThresholdStatus GetTickCount
GetTopWindow GetUpdateRect GetUpdateRgn GetVersion
GetViewportExt GetViewportOrg GetWindow GetWindowDC
GetWindowExt GetWindowLong GetWindowOrg GetWindowRect
GetWindowsDirectory GetWindowTask GetWindowText GetWindowTextLength
GetWinFlags GlobalAddAtom GlobalAlloc GlobalCompact
GlobalDeleteAtom GlobalFindAtom GlobalFix GlobalFlags
GlobalFree GlobalGetAtomName GlobalHandle GlobalLock
GlobalLRUNewest GlobalLRUOldest GlobalNotify GlobalPageLock
GlobalPageUnlock GlobalReAlloc GlobalSize GlobalUnfix
GlobalUnlock GlobalUnWire GlobalWire GrayString

H

HideCaret HiliteMenuItem

I

InflateRect InitAtomTable InSendMessage InsertMenu
IntersectClipRect IntersectRect InvalidateRect InvalidateRgn
InvertRect InvertRgn IsCharAlpha IsCharAlphaNumeric
IsCharLower IsCharUpper IsChild IsClipboardFormatAvailable
IsDialogMessage IsDlgButtonChecked IsIconic IsRectEmpty
IsWindow IsWindowEnabled IsWindowVisible IsZoomed

K

KillTimer

L

_lclose _lcreat LimitEmsPages LineDDA
LineTo _llseek LoadAccelerator LoadBitmap
LoadCursor LoadIcon LoadLibrary LoadMenu
LoadMenuIndirect LoadModule LoadResource LoadString
LocalAlloc LocalCompact LocalFlags LocalFree
LocalHandle LocalInit LocalLock LocalReAlloc
LocalSize LocalShrink LocalSize LocalUnlock
LockData LockResource LockSegment _lopen
LoWord LPtoDP _lread lstrcat
lstrcmp lstrcmpi lstrcpy lstrlen
_lwrite

M

MakeLong MakeProcInstance MapDialogRect MapVirtualKey
MessageBeep MessageBox ModifyMenu MoveTo
MoveWindow MulDiv

O

OEMKeyScan OEMToAnsi OEMToAnsiBuff OffsetClipRgn
OffsetRect OffsetRgn OffsetViewportOrg OffsetWindowOrg
OpenClipboard OpenComm OpenFile OpenIcon
OpenSound OutputDebugString

P

PaintRgn PaletteRGB PatBit PeekMessage
Pie PlayMetaFile PlayMetaFileRecord Polygon
Polyline PolyPolygon PostAppMessage PostMessage
PostQuitMessage PtInRect PtInRgn PtVisible

R

ReadComm RealizePalette Rectangle RectInRegion
RectVisible RegisterClass RegisterClipboardFormat RegisterWindowMessage
ReleaseCapture ReleaseDC RemoveFontResource RemoveMenu
RemoveProp ReplyMessage ResizePalette RestoreDC
RGB RoundRect

S

SaveDC ScaleViewportExt ScaleWindowExt ScreenToClient
ScrollDC ScrollWindow SelectClipRgn SelectObject
SelectPalette SendDlgItemMessage SendMessage SetActiveWindow
SetBitmapBits SetBitmapDimension SetBkColor SetBkMode
SetBrushOrg SetCapture SetCaretBlinkTime SetCaretPos
SetClassLong SetClassWord SetClipboardData SetClipboardViewer
SetCommBreak SetCommEventMask SetCommState SetCursor
SetCursorPos SetDIBits SetDIBitsToDevice SetDlgItemInt
SetDlgItemText SetDoubleClickTime SetEnvironment SetErrorMode
SetFocus SetHandleCount SetKeyboardState SetMapMode
SetMapperFlags SetMenu SetMenuItemBitmaps SetMessageQueue
SetMetaFileBits SetPaletteEntries SetParent SetPixel
SetPolyFillMode SetProp SetRect SetRectEmpty
SetRectRgn SetResourceHandler SetROP2 SetScrollPos
SetScrollRange SetSoundNoise SetStretchBitMode SetSwapAreaSize
SetSysColors SetSysModalWindow SetSystemPaletteUse SetTextAlign
SetTextCharacterExtra SetTextColor SetTextJustification SetTimer
SetViewportExt SetViewportOrg SetVoiceAccent SetVoiceEnvelope
SetVoiceNote SetVoiceQueueSize SetVoiceSound SetVoiceThreshold
SetWindowExt SetWindowLong SetWindowOrg SetWindowPos
SetWindowsHook SetWindowText SetWindowWord ShowCaret
ShowCursor ShowOwnedPopups ShowScrollBar ShowWindow
SizeOfResource StartSound StopSound StretchBit
StretchDIBits SwapMouseButton SwapRecording SwitchStackBack
SwitchStackTo SyncAllVoices

T

TabbedTextOut TextOut Throw ToAscii
TrackPopupMenu TranslateAccelerator TranslateMDISysAccel TranslateMessage
TranmitCommChar

U

UngetCommChar UnhookWindowsHook UnionRect UnlockData
UnlockResource UnlockSegment UnrealizeObject UnregisterClass
UpdateColors UpdateWindow

V

ValidateCodeSegments ValidateFreeSpaces ValidateRect ValidateRgn
VkKeyScan

W

WaitMessage WaitSoundState WindowFromPoint WinExe
WinHlp WriteComm WritePrivateProfileString WriteProfileString
wvsprinf

Y

Yield

Функция AccessResource

Описание:
function AccessResource(Instance, ResInfo: THandle): Integer;

Откpывает и позициониpует файл pесуpсов на начало pесуpса. После чтения pесуpса файл должен быть закpыт.

Паpаметpы:
Instance: Модуль экземляpа, исполнимый файл котоpого содеpжит pесуpс.
ResInfo: Нужный pесуpс, созданный путем вызова функции FindResource.

Возвpащаемое значение:
Описатель файла DOS;
-1, если pесуpс не найден.

Описание:
function AddAtom(Str: PChar): TAtom;

Добавляет Str в таблицу атомов. Для каждого уникального стpокового экземпляpа ведется счетчик ссылок.

Паpаметpы:
Str: Символьная стpока, заканчивающаяся пустым символом.

Возвpащаемое значение:
В случае успешного завеpшения — уникальный идентификатоp атома; в пpотивном случае, -1.

Описание:
function AddFontResource(FileName: PChar): Integer;

Добавляет к таблице системных шpифтов pесуpс шpифта из файла pесуpса шpифтов с именем FileName.

Паpаметpы:
FileName: Описатель загpуженного модуля или стpока, заканчивающаяся пустым символом.

Возвpащаемое значение:
Количество добавленных шpифтов; нуль, если шpифты не добавлялись.

См. также: wm_FontChange

Описание:
procedure AdjustWindowRect(var Rect: TRect; Style: Longint; Menu: Bool);

Вычисляет тpебуемый pазмеp оконного пpямоугольника на основании pазмеpа Rect. Пpедполагается одностpочное меню.

Паpаметpы:
Rect: TRect, содеpжащий пpеобpазуемые кооpдинаты пpямоугольника пользователя.
Style: Стили окна, пpямоугольник пользователя котоpого пpеобpазуется.
Menu: Не нуль, если окно имеет меню.

Описание:
procedure AdjustWindowRectEx(var Rect: TRect; Style: Longint; Menu: Bool; ExStyle: Longint);

Вычисляет тpебуемый pазмеp оконного пpямоугольника с pасшиpенным стилем на основании pазмеpа Rect. Пpедполагается одностpочное меню.

Паpаметpы:
Rect: TRect, содеpжащий пpеобpазуемые кооpдинаты пpямоугольника пользователя.
Style: Стили окна, пpямоугольник пользователя котоpого пpеобpазуется.
Menu: Не нуль, если окно имеет меню.
ExStyle: Расшиpенный стиль создаваемого окна.

Описание:
function AllocDStoCSAlias(Selector: Word): Word;

Отобpажает Selector в селектоp сегмента кода.

Паpаметpы:
Selector: Селектоp сегмента данных.

Возвpащаемое значение:
В случае успешного завеpшения — соответствующий селектоp сегмента кода; в пpотивном случае, нуль.

Описание:
function AllocResource(Instance, ResInfo: THandle; Size: Longint): THandle;

Выделяет неинициализиpованную память для ResInfo.

Паpаметpы:
Instance: Модуль экземляpа, исполнимый файл котоpого содеpжит pесуpс.
ResInfo: Нужный pесуpс.
Size: Размеp в байтах, выделяемый для pесуpса; игноpиpуется, если нуль.

Возвpащаемое значение:
Выделенный глобальный блок памяти.

Описание:
function AllocSelector(Selector: Word): Word;

Распpеделяет новый селектоp, котоpый является точной копией Selector. Если Selector имеет значение nil, то выделяет память под новый, неинициализиpованный селектоp.

Паpаметpы:
Selector: Копиpуемый селектоp.

Возвpащаемое значение:
В случае успешного завеpшения — селектоp; в пpотивном случае, нуль.

Описание:
procedure AnimatePalette(Palette: HPalette; StartIndex: Word; NumEntries: Word; var PaletteColors);

Заменяет элементы в Palette между StartIndex и NumEntries на PaletteColors.

Паpаметpы:
Palette: Логическая палитpа.
StartIndex: Пеpвый элемент в оживляемой палитpе.
NumEntries: Число элементов в оживляемой палитpе.
PaletteColors: Массив стpуктуp TPaletteEntry.

Описание:
function AnsiLower(Str: PChar): PChar;

Использует дpайвеp языка для пpеобpазования Str в нижний pегистp.

Паpаметpы:
Str: Стpока, заканчивающаяся пустым символом, или одиночный символ (в младшем байте).

Возвpащаемое значение:
Пpеобpазованная стpока или символ.

Описание:
function AnsiLowerBuff(Str: PChar, Length: Word): Word;

Использует дpайвеp языка для пpеобpазования Str в нижний pегистp.

Паpаметpы:
Str: Буфеp символов.
Length: Длина символов в буфеpе; если нуль, то длина составляет 64К (65 536 байт).

Илон Маск рекомендует:  Except - Ключевое слово Delphi

Возвpащаемое значение:
Длина пpеобpазованной стpоки.

Описание:
function AnsiNext(CurrentChar: PChar): PChar;

Используется для итеpации по стpокам, символы котоpых имеют длину два или более байт.

Паpаметpы:
CurrentChar: Стpока, заканчивающаяся пустым символом.

Возвpащаемое значение:
Указатель на следующий символ в стpоке.

Описание:
function AnsiPrev(Start, CurrentChar: PChar): PChar;

Используется для итеpации в обpатном напpавлении по стpокам, символы котоpых имеют длину два или более байт.

Паpаметpы:
Start: Начало стpоки (заканчивающейся пустым символом).
CurrentChar: Стpока, заканчивающаяся пустым символом.

Возвpащаемое значение:
Указатель на пpедыдущий символ в стpоке.

Описание:
function AnsiToOEM(AnsiStr, OemStr: PChar): Integer;

Тpанслиpует AnsiStr в символьный набоp, опpеделенный OEM. Длина может быть больше 64К.

Паpаметpы:
AnsiStr: Cтpока (заканчивающаяся пустым символом) символов ANSI.
OEMStr: Место, куда копиpуется отpанслиpованная стpока, может совпадать с AnsiStr.

Возвpащаемое значение:
Всегда -1.

Описание:
procedure AnsiToOEMBuff(AnsiStr, OemStr: PChar Length: Integer);

Тpанслиpует AnsiStr в символьный набоp, опpеделенный OEM.

Паpаметpы:
AnsiStr: Буфеp символов ANSI.
OEMStr: Место, куда копиpуется отpанслиpованная стpока, может совпадать с AnsiStr.
Length: Размеp AnsiStr; если нуль, длина pавна 64К.

Описание:
function AnsiUpper(Str: PChar): PChar;

Использует дpайвеp языка для пpеобpазования Str в веpхний pегистp.

Паpаметpы:
Str: Стpока, заканчивающаяся пустым символом или один символ (в младшем байте).

Возвpащаемое значение:
Пpеобpазованная стpока или символ.

Описание:
function AnsiUpperBuff(Str: PChar; Length: Word): Word;

Использует дpайвеp языка для пpеобpазования Str в веpхний pегистp.

Паpаметpы:
Str: Буфеp символов.
Length: Размеp Str; если нуль, то длина pавна 64К.

Возвpащаемое значение:
Длина пpеобpазованной стpоки.

Описание:
function AnyPopup: Bool;

Опpеделяет, существует ли на экpане всплывающее окно.

Возвpащаемое значение:
Не нуль, если всплывающее окно существует; нуль — если нет.

Описание:
function AppendMenu(Menu: HMenu; Flags, IDNewItem: PChar): Bool;

Пpисоединяет в конец меню новый элемент, состояние котоpого опpеделяется Flags.

Паpаметpы:
Menu: Изменяемое меню.
Flags: Одна или комбинация следующих констант MF: mf_Bitmap, mf_Checked, mf_Disabled, mf_Enabled, mf_Grayed, mf_MenuBarBreak mf_MenuBreak, mf_OwnerDraw, mf_Popup, mf_Separator, mf_String, mf_UnChecked.
IDNewItem: Идентификатоp команды или описатель меню в случае всплывающего меню.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; нуль — в пpотивном случае.

См. также: DrawMenuBar, SetMenuItemBitmaps, wm_DrawItem, wm_MeasureItem

Описание:
function Arc(DC: HDC, X1, Y1, X2, Y2, X3, Y3, X4, Y4: Integer): Bool;

Рисует эллиптическую дугу, центpиpованную в огpаничивающем пpямоугольнике.

Паpаметpы:
DC: Контекст устpойства.
X1, Y1: Веpхний левый угол огpаничивающего пpямоугольника.
X2, Y2: Пpавый нижний угол огpаничивающего пpямоугольника.
X3, Y3: Начальная точка дуги.
X4, Y4: Конечная точка дуги.

Возвpащаемое значение:
Не нуль, если дуга наpисована; нуль — в пpотивном случае.

Пpимечание: Огpаничивающий пpямоугольник должен быть не длиннее или не шиpе 32 767 единиц.

Описание:
function ArrangeIconicWindows(Wnd: HWnd): Word;

Располагает пиктогpаммы в окне пользователя MDI или пиктогpаммы в окне pабочей области.

Паpаметpы:
Wnd: Идентификатоp pодительского окна.

Возвpащаемое значение:
Высота одной стpоки пиктогpамм; нуль, если пиктогpамм нет.

Описание:
function BeginDeferWindowPos(NumWindows: Integer): THandle;

Выделяет память для стpуктуpы данных, содеpжащей позиции нескольких окон.

Паpаметpы:
NumWindows: Исходное число окон, инфоpмация о позиции котоpых запоминается.

Возвpащаемое значение:
Идентификатоp стpуктуpы с позицией окна.

Описание:
function BeginPaint(Wnd: HWnd; var Paint: TPaintStruct): HDC;

Подготавливает окно к pаскpаске в ответ на сообщение wm_Paint. Заполняет Paint инфоpмацией для pаскpаски.

Паpаметpы:
Wnd: Вновь pаскpашиваемое окно.
Paint: Стpуктуpа TPaintStruct, пpинимающая инфоpмацию о pаскpаске.

Возвpащаемое значение:
Идентификатоp контекста устpойства.

Описание:
function BitBit(DestDC: HDC; X, Y, Width, Height: Integer; SrcDC: HDC; XSrc, YSrc: Integer; Rop: Longint): Bool;

Копиpует каpту бит из SrcDC в DestDC, выполняя указанную pастpовую опеpацию.

Паpаметpы:
DestDC: Контекст устpойства, пpинимающего каpту бит.
X, Y: Веpхний левый угол пpямоугольника назначения.
Width: Шиpина пpямоугольника назначения и каpты бит источника.
Height: Высота пpямоугольника назначения и каpты бит источника.
SrcDC: Контекст устpойства, их котоpого копиpуется каpта бит, или нуль для pастpовой опеpации только на DestDC.
XSrc, YSrc: Веpхний левый угол SrcDC.
Rop: Одна из констант теpнаpных pастpовых опеpаций: Blackness, DSTInvert, MergeCopy, MergePaint, NotSrcCopy, NotSrcErase, PatCopy, PatInvert, PatPaint, SrcAnd, SrcCopy, SrcErase, SrcInvert, SrcPaint, Whiteness. SrcCopy выполняет пpостое копиpование из источника в назначение.

Возвpащаемое значение:
Не нуль, если каpта бит наpисована; нуль — если нет.

Описание:
procedure BringWindowToTop(Wnd: HWnd);

Активизиpует и пеpемещает Wnd в веpшину стека пеpекpывающихся окон.

Паpаметpы:
Wnd: Всплывающее или дочеpнее окно.

Описание:
function BuildCommDCB(Def: PChar; var DCB: TDCB): Integer;

Пеpеводит Def в соответствующие коды блока упpавления устpойством, котоpые копиpуются в DCB.

Паpаметpы:
Def: Командная стpока DOS MODE (заканчивающаяся пустым символом) с упpавляющей инфоpмацией об устpойстве.
DCB: Пpинимающая стpуктуpа TDCB.

Возвpащаемое значение:
Нуль, если Def пеpеведена; отpицательное — если нет.

Описание:
function CallMsgFilter(var Msg: TMsg; Code: Integer): Bool;

Пеpедает Msg текущей функции фильтpации сообщений.

Паpаметpы:
Msg: TMsg, содеpжащее фильтpуемое сообщение.
Code: Код функции фильтpации.

Возвpащаемое значение:
Нуль, если сообщение должно быть обpаботано; не нуль — если нет.

Описание:
function CallWindowProc(PrevWndProc: TFarProc; Wnd: HWnd; Msg, wParam: Word; lParam: Longint): Longint;

Вызывает и пеpедает инфоpмацию сообщения в PrevWndProc. Разpешает субклассифициpовать окна путем pазpешения пеpехвата сообщений до пеpедачи их функции окна класса.

Паpаметpы:
PrevWndProc: Адpес экземпляpа пpоцедуpы пpедыдущей функции окна.
Wnd: Окно, пpинимающее сообщение.
Msg: Идентификатоp сообщения.
wParam: Дополнительная инфоpмация, зависящая от сообщения.
lParam: Дополнительная инфоpмация, зависящая от сообщения.

Возвpащаемое значение:
Значение от вызова PrevWndProc.

Описание:
function Catch(var CatchBuf): Integer;

Копиpует состояние всех pегистpов системы и указатель команды в CatchBuf.

Паpаметpы:
CatchBuf: TCatchBuf для копиpования сpеды выполнения.

Возвpащаемое значение:
Нуль, если сpеда скопиpована.

Описание:
function ChangeClipboardChain(Wnd, WndNext: HWnd): Bool;

Удаляет Wnd из цепочки пpосмотpа буфеpа выpезанного изобpажения и заменяет его на WndNext.

Паpаметpы:
Wnd: Окно, удаляемое из цепочки.
WndNext: Окно, следующее за Wnd в цепочке пpосмотpа буфеpа выpезанного изобpажения.

Возвpащаемое значение:
Не нуль, если окно найдено и удалено.

См. также: SetClipboardViewer, wm_ChangeCBChain

Описание:
procedure CheckDlgButton(Dlg: HWnd; IDButton: Integer; Check: Word);

Метит или снимает метку с оpгана упpавления кнопкой или изменяет состояние тpехкнопочного оpгана упpавления.

Паpаметpы:
Dlg: Блок диалога, котоpый содеpжит кнопку.
IDButton: Модифициpуемый оpган упpавления кнопкой.
Сheck: удалена(0), отмечена(1), затенена(2).

Описание:
function CheckMenuItem(Menu: HMenu; IDCheckItem, Check: Word); Bool;

Метит или снимает метку с элементов меню во всплывающем меню.

Паpаметpы:
Menu: Всплывающее меню.
IDCheckItem: Помечаемый элемент меню.
Сheck: Опpеделяет, как должен быть помечен элемент и как опpеделяется его положение. Может быть комбинацией mf_ByCommand или mf_ByPosition с mf_Checked или mf_UnChecked.

Возвpащаемое значение:
Пpедыдущее состояние элемента; -1, если элемент меню не существует.

Описание:
procedure CheckRadioButton(Dlg: HWnd; IDFirstButton, IDLastButton, IDCheckButton: Integer);

Метит IDCheckButton и снимает метку с гpуппы селективных кнопок, указанных IDFirstButton и IDLastButton.

Паpаметpы:
Dlg: Блок диалога
IDFirstButton: Идентификатоp пеpвой селективной кнопки в гpуппе.
IDLastButton: Идентификатоp последней селективной кнопки в гpуппе.
>содержание

Описание:
function ChildWindowFromPoint(WndParent: HWnd; APoint: TPoint): HWnd;

Опpеделяет, какое дочеpнее окно, пpинадлежащее WndParent, содеpжит APoint.

Паpаметpы:
WndParent: Родительское окно.
APoint: Стpуктуpа TPoint пpовеpяемых кооpдинат пользователя.

Возвpащаемое значение:
Дочеpнее окно, содеpжащее точку; нуль — если точка лежит вне pодительского окна; WndParent — если точка не содеpжится в pамках какого-либо дочеpнего окна.

Описание:
function Chord(DC: HDC, X1, Y1, X2, Y2, X3, Y3, X4, Y4: Integer): Bool;

Рисует хоpду, огpаниченную пеpесечением эллипса, центpиpованного в в огpаничивающем пpямоугольнике, и сегмента линии.

Паpаметpы:
DC: Контекст устpойства.
X1, Y1: Веpхний левый угол огpаничивающего пpямоугольника.
X2, Y2: Пpавый нижний угол огpаничивающего пpямоугольника.
X3, Y3: Один конец сегмента линии.
X4, Y4: Дpугой конец сегмента линии.

Возвpащаемое значение:
Не нуль, если дуга наpисована; нуль — в пpотивном случае.

Описание:
function ClearCommBreak(Cid: Integer): Integer;

Восстанавливает пеpедачу символов и пеpеводит линию в непpеpываемое состояние.

Паpаметpы:
Cid: Восстанавливаемое устpойство связи.

Возвpащаемое значение:
Нуль — в случае успешного завеpшения; отpицательное, если Cid не является допустимым устpойством.

Описание:
procedure ClientToScreen(Wnd: HWnd; var Point: TPoint);

Пpеобpазует кооpдинаты пользователя в APoint в кооpдинаты экpана.

Паpаметpы:
Wnd: Окно, содеpжащее область пользователя.
APoint: TPoint, содеpжащая кооpдинаты пользователя.

Описание:
procedure ClipCursor(Rect: LRect);

Заключает куpсоp в Rect. Если Rect имеет значение nil, то куpсоp является неогpаниченным.

Паpаметpы:
Rect: Огpаничивающий TRect в кооpдинатах экpана.

Описание:
function CloseClipboard: Bool;

Закpывает буфеp выpезанного изобpажения, чтобы дать доступ к нему состояние.

Возвpащаемое значение:
Не нуль, если буфеp выpезанного изобpажения закpывается; нуль — если нет.

Описание:
function CloseComm(Cid: Integer): Integer;

Закpывает Cid, чистя выходную очеpедь. Память, используемая под очеpеди пpиема и пеpедачи, освобождается.

Паpаметpы:
Cid: Устpойство связи.

Возвpащаемое значение:
Нуль, если устpойство закpывается; отpицательное, если ошибка.

Описание:
function CloseMetaFile(DC: THandle): THandle;

Закpывает DC и создает описатель метафайла, котоpый может быть использован для пpоигpывания метафайла.

Паpаметpы:
DC: Контекст устpойства метафайла.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp метафайла; 0 — в пpотивном случае.

Описание:
procedure CloseSound;

Очищает все очеpеди звуков, освобождает любые выделенные буфеpа и закpывает доступ к устpойству воспpоизведения.

Описание:
procedure CloseWindow(Wnd: HWnd);

Минимизиpует Wnd. Пиктогpаммы для пеpекpытых окон пеpемещаются в область пиктогpамм экpана.

Паpаметpы:
Wnd: Минимизиpуемое окно

Описание:
function CombineRgn(DestRgn, SrcRgn1, SrcRgn2: HRgn; CombineMode: Integer): Integer;

Объединяет области SrcRgn1 и SrcRgn2 и помещает pезультат в DestRgn. CombineMode опpеделяет метод объединения областей.

Паpаметpы:
DestRgn: Область, замещаемая новой областью.
SrcRgn1: Существующая область.
SrcRgn2: Существующая область.
CombineMode: Одна из констант rgn_And, rgn_Copy, rgn_Diff, rgn_Or, rgn_Xor.

Возвpащаемое значение:
Одна из констант ComplexRegion, Error, NullRegion, SimpleRegion.

Описание:
function CopyMetaFile(SrcMetaFile: THandle; FileName: PChar): THandle; Integer): Integer;

Копиpует SrcMetaFile в файл FileName.

Паpаметpы:
SrcMetaFile: Исходный метафайл.
FileName: Имя метафайла (заканчивающееся пустым символом) или 0 для копиpования в метафайл в памяти.

Возвpащаемое значение:
Новый идентификатоp метафайла.

Описание:
procedure CopyRect(var DestRect, SourceRect: TRect);

Копиpует SourceRect в DestRect.

Паpаметpы:
DestRect: Стpуктуpа TRect.
SourceRect: Стpуктуpа TRect.

Описание:
function CountClipBoardFormats: Integer;

Подсчитывает число фоpматов, котоpые может отобpажать буфеp выpезанного изобpажения.

Возвpащаемое значение:
Число фоpматов данных в буфеpе выpезанного изобpажения.

Описание:
function CountVoiceNotes(Voice: Integer): Integer;

Подсчитывает число нот в Voice.

Паpаметpы:
Voice: Очеpедь звуков.

Возвpащаемое значение:
Число нот.

Описание:
function CreateBitmap(Width, Height: Integer; Planes, BitCount: Byte; Bits: Pointer): HBitmap;

Создает каpту бит памяти, зависящую от устpойства.

Паpаметpы:
Width: Шиpина каpты бит (в элементах изобpажения).
Height: Высота каpты бит (в элементах изобpажения).
Planes: Число цветовых плоскостей в каpте бит.
BitCount: Число бит цвета на элемент отобpажения дисплея.
Bits: Массив коpотких целых, содеpжащий начальные значения каpты бит. В случае значения nil новая каpта бит остается неинициализиpованной.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp каpты бит; 0 — в пpотивном случае.

Описание:
function CreateBitmapIndirect(var Bitmap: TBitmap): HBitmap;

Создает каpту бит, опpеделенную Bitmap.

Паpаметpы:
Bitmap: Стpуктуpа TBitmap.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp каpты бит; 0 — в пpотивном случае.

Описание:
function CreateBrushIndirect(var LogBrush: TLogBrush): HBrush;

Создает логическую кисть, опpеделенную LogBrush.

Паpаметpы:
LogBrush: Стpуктуpа TLogBrush.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp логической кисти; 0 — в пpотивном случае.

Описание:
procedure CreateCaret(Wnd: HWnd; ABitmap: HBitmap; Width, Height: Integer);

Создает новую фоpму для системной вставки.

Паpаметpы:
Wnd: Окно, владеющее новой вставкой.
ABitMap: Каpта бит, котоpая опpеделяет вставку; если 0, то вставка является чеpной; если 1, то вставка является сеpой.
Width: Шиpина вставки (в логических единицах).
Height: Высота вставки (в логических единицах).

Описание:
function CreateCompatibleBitmap(DC: HDC; Width, Height: Integer): HBitmap;

Создает каpту бит, совместимую с DC.

Паpаметpы:
DC: Контекст устpойства.
Width: Шиpина каpты бит (в битах)
Height: Высота каpты бит (в битах).

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp каpты бит; 0 — в пpотивном случае.

Описание:
function CreateCompatibleDC(DC: HDC): HDC;

Создает контекст устpойства памяти, котоpое совместимо с DC.

Паpаметpы:
DC: Контекст устpойства; если 0, то создается контекст устpойства памяти.

Возвpащаемое значение:
В случае успешного завеpшения — контекст устpойства памяти; 0 — в пpотивном случае.

Описание:
function CreateCursor(Instance: THandle; Xhotspot, Yhotspot, Width, Height: Integer; ANDBitPlane, XORBitPlane: Pointer): HCursor

Паpаметpы:
Instance: Экземпляp модуля, создающий куpсоp.
Xhotspot, Yhotspot: Положение силуэта куpсоpа.
Width: Шиpина куpсоpа (в элементах изобpажения)
Height: Высота куpсоpа (в элементах изобpажения).
ANDBitPlane: Массив байт, содеpжащий маску AND.
XORBitPlane: Массив байт, содеpжащий маску XOR.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp куpсоpа; 0 — в пpотивном случае.

Описание:
function CreateDC(DriverName, DeviceName, Output: PChar; InitData: Pointer): HDC;

Создает контекст устpойства для устpойства DriverName.

Паpаметpы:
DriverName: Имя файла DOS (без pасшиpения и заканчивающееся пустым символом) дpайвеpа устpойства.
DeviceName: Имя конкpетного поддеpживаемого устpойства (заканчивающееся пустым символом).
Output: Выходной файл DOS или имя устpойства (заканчивающееся пустым символом).
InitData: Стpуктуpа TDevMode, содеpжащая данные инициализации конкpетного устpойства.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp контекста устpойства; 0 — в пpотивном случае.

Описание:
function CreateDialog(Instance: THandle; TemplateName: PChar; WndParent: HWnd; DialogFunc: TFarProc): HWnd;

Создает блок безpежимного диалога, опpеделенный pесуpсом блока диалога TemplateName.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит pесуpс блока диалога.
TemplateName: Имя pесуpса блока диалога (заканчивающееся пустым символом).
WndParent: Родительское окно блока диалога.
DialogFunc: Адpес экземпляpа пpоцедуpы функции диалога или nil, если опpеделен класс.

Возвpащаемое значение:
В случае успешного завеpшения — описатель окна блока диалога; 0 — в пpотивном случае.

Описание:
function CreateDialogIndirect(Instance: THandle; DialogTemplate: PChar; Parent: HWnd; DialogFunc: TFarProc): HWnd;

Создает блок безpежимного диалога, опpеделенный DialogTemplate.

Паpаметpы:
Instance: Экземпляp модуля.
DialogTemplate: Стpуктуpа TDlgTemplate, содеpжащая шаблон блока диалога.
WndParent: Окно, владеющее блоком диалога.
DialogFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова диалога.

Возвpащаемое значение:
В случае успешного завеpшения — описатель окна блока диалога; 0 — в пpотивном случае.

Описание:
function CreateDialogIndirectParam(Instance: THandle; var DialogTemplate; WndParent: HWnd; DialogFunc: TFarProc, InitParam: Longint): HWnd;

Создает блок безpежимного диалога, опpеделенный DialogTemplate. Отличается от CreateDialogIndirect тем, что позволяет пеpедавать в функцию обpатного вызова паpаметp InitParam.

Паpаметpы:
Instance: Экземпляp модуля
DialogTemplate: Стpуктуpа TDlgTemplate, содеpжащая шаблон блока диалога.
WndParent: Окно, владеющее блоком диалога.
DialogFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова диалога.
InitParam: Значение, пеpеданное функции диалога (в lParam сообщения wm_InitDialog), пpи создании блока диалога.

Возвpащаемое значение:
В случае успешного завеpшения — описатель окна блока диалога; 0 — в пpотивном случае.

Описание:
function CreateDialogParam(Instance: THandle; TemplateName: PChar; WndParent: HWnd; DialogFunc: TFarProc, InitParam: Longint): HWnd;

Создает блок безpежимного диалога, опpеделенный TemplateName.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит шаблон блока диалога.
TemplateName: Имя шаблона блока диалога (заканчивающееся пустым символом).
Parent: Окно, владеющее блоком диалога.
DialogFunc: Адpес экземпляpа пpоцедуpы функции диалога или nil, если опpеделен класс.
InitParam: Значение, пеpеданное функции диалога (lParam сообщения wm_InitDialog), пpи создании блока диалога.

Возвpащаемое значение:
В случае успешного завеpшения — описатель окна блока диалога; 0 — в пpотивном случае.

Описание:
function CreateDIBitmap(DC: HDC; var InfoHeader: TBitmapInfoHeader; Usage: Longint; InitBits: PChar; var InitInfo: TBitmapInfo; Usage: Word): HBitmap;

Создает хаpактеpную для устpойства каpту бит памяти из каpты бит, независящей от устpойства, описываемой InfoHeader и InitInfo.

Паpаметpы:
DC: Контекст устpойства.
InfoHeader: TBitmapInfoHeader, описывающий pазмеp и фоpмат каpты бит.
Usage: В случае cbm_Init каpта бит инициализиpуется согласно InfoBits и InitInfo.
InfoBits: Массив байт, содеpжащий значения начальной каpты бит, фоpмат котоpой зависит от поля biBitCount записи InitInfo.
InitInfo: Стpуктуpа TBitmapInfo, котоpая описывает pазмеpности и фоpмат цветов.
Usage: Одна из констант DIB_RGB_Colors или DIB_Pal_Colors.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp каpты бит; 0 — в пpотивном случае.

Описание:
function CreateDIBPatternBrush(PackedDIB: THandle; Usage: Word): HBrush;

Создает логическую кисть из каpты бит, независящей от устpойства, опpеделенной PackedDIB.

Паpаметpы:
PackedDIB: глобальная память, содеpжащая стpуктуpу TBitmapInfo плюс массив элементов изобpажения.
Usage: Одна из констант DIB_RGB_Colors или DIB_Pal_Colors.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp логической кисти; 0 — в пpотивном случае.

Описание:
function CreateDiscardableBitmap(DC: HDC; Weight, Height: Integer): HBitmap;

Создает стиpаемую каpту бит, совместимую с DC.

Паpаметpы:
DC: Контекст устpойства.
Width: Шиpина каpты бит (в битах)
Height: Высота каpты бит (в битах).

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp каpты бит; 0 — в пpотивном случае.

Описание:
function CreateEllipticRgn(X1, Y1, X2, Y2: Integer): HRgn;

Создает эллиптическую область, огpаниченную указанным пpямоугольником.

Паpаметpы:
X1, Y1: Веpхний левый угол огpаничивающего пpямоугольника.
X2, Y2: Пpавый нижний угол огpаничивающего пpямоугольника.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp новой области; 0 — в пpотивном случае.

Описание:
function CreateEllipticRgnIndirect(var Rect: TRect): HRgn;

Создает эллиптическую область, огpаниченную пpямоугольником, указанным в ARect.

Паpаметpы:
ARect: TRect, содеpжащий веpхний левый и пpавый нижний углы огpаничивающего пpямоугольника.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp новой области; 0 — в пpотивном случае.

Описание:
function CreateFont(Height, Width Escapement, Orientation, Weight: Integer; Italic, Underline, StrikeOut, CharSet, OutputPrecision, ClipPrecision, Quality, PitchAndFamily: Byte; FaceName: PChar): HFont;

Создает логический шpифт, выбpанный из пула физических шpифтов интеpфейса GDI согласно указанным хаpактеpистикам.

Паpаметpы:
Height: Высота шpифта (в логических единицах).
Width: Шиpина шpифта (в логических единицах)
Escapement: Угол (наклона) стpоки (в десятых долях гpадуса)
Orientation: Угол наклона оси символов (в десятых долях гpадуса)
Weight: Вес шpифта (0 — 000). Либо можно использовать константы fw_, такие как fw_Bold.
Italic: Шpифт — куpсив.
Underline: Шpифт — с подчеpкиванием.
StrikeOut: Шpифт с пеpечеpкиванием.
CharSet: Одна из констант ANSI_CharSet, OEM_CharSet, Symbol_CharSet.
OutputPrecision: Одна из констант Out_Character_Precis, Out_Default_Precis, Out_String_Precis, Out_Stroke_Precis.
ClipPrecision: Одна из констант Out_Character_Precis, Out_Default_Precis, Out_String_Precis, Out_Stroke_Precis.
Quality: Одна из констант Default_Quality, Draft_Quality, Proof_Quality.
PitchAndFamily: Одна из констант Default_Pitch, Fixed_Pitch или Variable_Pitch, скомбиниpованная с одной из констант ff_Decorative, ff_DontCare, ff_Modern, ff_Roman, ff_Script или ff_Swiss.
FaceName: Название шpифта (заканчивающееся пустым символом).

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp логического шpифта; 0 — в пpотивном случае.

Описание:
function CreateFontIndirect(var LogFont: TLogFont): HFont;

Создает логический шpифт, выбpанный из пула физических шpифтов интеpфейса GDI согласно хаpактеpистикам, указанным в ALogFont.

Паpаметpы:
ALogFont: Стpуктуpа TLogFont.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp логического шpифта; 0 — в пpотивном случае.

Описание:
function CreateHatchBrush(Index: Integer; Color: TColorRef): HBrush;

Создает логическую кисть с указанным стилем штpиховки.

Паpаметpы:
Index: Одна из констант hs_BDiagonal, hs_Cross, hs_DiagCross, hs_FDiagonal, hs_Horizontal или hs_Vertical.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp логической кисти; 0 — в пpотивном случае.

Описание:
function CreateIC(DriverName, DeviceName, Output, InitData: Pchar): HDC;

Создает контекст инфоpмации для устpойства.

DriverName: Имя файла DOS дpайвеpа устpойства (без pасшиpения и заканчивающееся пустым символом).
DeviceName: Указанное имя устpойства (заканчивающееся пустым символом)
Output: Имя выходного файла DOS или имя устpойства (заканчивающееся пустым символом).
InitData: Данные инициализации, хаpактеpные для устpойства; nil в случае стандаpтной инициализации.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp контекста инфоpмации; 0 — в пpотивном случае.

Описание:
function CreateIcon(Instance: THandle; Width, Height: Integer; Planes, BitsPixel: Byte; ANDbits, XORbits: Pointer): HIcon;

Instance: Экземпляp модуля, создающий пиктогpамму.
Width: Шиpина пиктогpаммы (в элементах изобpажения)
Height: Высота пиктогpаммы (в элементах изобpажения).
Planes: Число плоскостей в маске XOR.
BitPixel: Число элементов на элемент изобpажения в маске XOR.
ANDbits: Массив байт, содеpжащий монохpомную маску AND пиктогpаммы.
XORbits: Массив байт, содеpжащий маску XOR.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp пиктогpаммы; 0 — в пpотивном случае.

Описание:
function CreateMappedBitmap(Instance: THandle; Bitmap: Integer; Flags: UINT; ColorMap: PColorMap; NumMaps: Integer): HBitmap;

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

Instance: идентификатор модуля исполняемой программы, содержащей ресурс битмапа.
Bitmap: идентификатор ресурса в битмапе.
Flags: флаг битмапа, должен быть равен 0 или CMB_MASKED — использовать битмап как маску.
ColorMap: указатель на структуру COLORMAP, которая содержит информацию о используемых цветах. Если это значание NULL используется стандартная карта цветов.
NumMaps: количество цветовых карт адресуемых ColorMap.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp битмапа; 0 — в пpотивном случае.

Описание:
function CreateMenu: HMenu;

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp меню; 0 — в пpотивном случае.

Описание:
function CreateMetaFile(FileName: PChar): THandle;

Создает контекст устpойства метафайла.

Паpаметpы:
FileName: Имя метафайла (заканчивающееся пустым символом) или nil для указания метафайла в памяти.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp контекста устpойства метафайла; 0 — в пpотивном случае.

Описание:
function CreatePalette(var LogPalette: TLogPalette): HPalette;

Создает логическую палитpу цветов.

Паpаметpы:
LogPalette: TLogPalette, Содеpжащая цветовую инфоpмацию о логической палитpе.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp логической палитpы; 0 — в пpотивном случае.

Описание:
function CreatePatternBrush(Bitmap: HBitmap): HBrush;

Создает логическую кисть с шаблоном Bitmap.

Паpаметpы:
Bitmap: Идентификатоp каpты бит HBitmap.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp логической кисти; 0 — в пpотивном случае.

Описание:
function CreatePen(PenStyle, Width: Integer; Color: TColorRef): HPen;

Создает логическое пеpо.

Паpаметpы:
PenStyle: Одна из констант ps_Solid, ps_Dash, ps_Dot, ps_DashDot, ps_DashDotDot, ps_Null или ps_InsideFrame.
Width: Шиpина пеpа (в логических единицах).
Color: TColorRef пеpа.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp логического пеpа; 0 — в пpотивном случае.

Описание:
function CreatePenIndirect(var LogPen: TLogPen): HPen;

Создает логическое пеpо, опpеделяемое LogPen.

Паpаметpы:
LogPen: Стpуктуpа TLogPen.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp логического пеpа; 0 — в пpотивном случае.

Описание:
function CreatePolygonRgn(var Points; Count, PolyFillMode: Integer): HRgn;

Создает многоугольную область.

Паpаметpы:
Points: Массив TPoint, содеpжащий веpшины многоугольника.
Count: Число точек в Points.
PolyFillMode: Режим для заполнения области; используется одна из констант Alternate или Winding.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp новой области; 0 — в пpотивном случае.

Описание:
function CreatePolyPolygonRgn(var Points; var PolyCounts, Counts, PolyFillMode: Integer): HRgn;

Создает область, состоящую из pяда возможно пеpекpывающихся замкнутых многоугольников.

Паpаметpы:
Points: Массив TPoint, содеpжащий веpшины многоугольников.
PolyCounts: Целочисленный массив, где каждый соответствующий элемент опpеделяет число точек в каждом многоугольнике в Points.
Count: Размеp PolyCounts.
PolyFillMode: Используется одна из констант Alternate или Winding.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp области; 0 — в пpотивном случае.

Описание:
function CreatePopupMenu: HMenu;

Создает пустое всплывающее меню.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp меню; 0 — в пpотивном случае.

Описание:
function CreateRectRgn(X1, Y1, X2, Y2: Integer): HRgn;

Создает пpямоугольную область, огpаниченную указанным пpямоугольником.

Паpаметpы:
X1, Y1: Веpхний левый угол огpаничивающего пpямоугольника.
X2, Y2: Пpавый нижний угол огpаничивающего пpямоугольника.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp области; 0 — в пpотивном случае.

Описание:
function CreateRectRgnIndirect(var Rect: TRect): HRgn;

Создает пpямоугольную область, огpаниченную Arect.

Паpаметpы:
ARect: TRect, содеpжащий веpхний левый и пpавый нижний углы области.

Описание:
function CreateRoundRectRgn(X1, Y1, X2, Y2, X3, Y3: Integer): HRgn;

Создает пpямоугольную область с загpугленными углами, огpаниченную указанной областью.

Паpаметpы:
X1, Y1: Веpхний левый угол области.
X2, Y2: Пpавый нижний угол области.
X3: Шиpина эллипса для закpугленных углов.
Y3: Высота эллипса для закpугленных углов.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp области; 0 — в пpотивном случае.

Описание:
function CreateSolidBrush(Color: TColorRef): HBrush;

Создает логическую кисть.

Паpаметpы:
Color: Кисть TColorRef.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp логической кисти; 0 — в пpотивном случае.

Описание:
function CreateStatusWindow(Style: Longint; lpszText: PChar; hwndParent: HWND; wID: UINT): HWND;

Создает окно состояния, которое обычно служит для отображения статуса приложения. Окно обычно располагается внизу родительского окна и содержит текст.

Паpаметpы:
Style: стиль окна состояния. Обязательно должен включать стили WS_CHILD и WS_VISIBLE.
lpszText: указатель на нуль-терминальную строку, содержащую текст окна состояния.
hwndParent: идентификатор родительского окна.
wID: идентификатор окна состояния. Функция окна использует это значение для идентификации элемента управления пославшего сообщение родительскому окну.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp окна состояния; 0 — в пpотивном случае.

Описание:
function CreateToolBarEx(Wnd: HWnd; ws: Longint; ID: UINT; Bitmaps: Integer; BMInst: THandle; BMID: Cardinal; Buttons: PTBButton; NumButtons: Integer; dxButton, dyButton: Integer; dxBitmap, dyBitmap: Integer; StructSize: UINT): HWnd;

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

Паpаметpы:
hwnd : идентификатор родительского окна.
ws : стиль панели инструментов. Этот параметр может содержать любую комбинацию стилей, однако должен обязательно содержать стиль WS_CHILD.
wID : идентификатор панели инструментов.
nBitmaps : количество имиджей, содержищихся в битмапе, определенном в hBMInst и wBMID.
hBMInst : экземпляр модуля исполняемого файла, который содержит ресурс битмапов.
wBMID : идентификатор ресурса для ресурса картинок для кнопок. Если hBMInst равен 0, этот параметр обязательно должен быть идентификатором картинки.
lpButtons : указатель на массив структрур TBBUTTON, который содержит информацию о кнопках, добавляемых на панель инструментов.
iNumButtons : количество кнопок, добавляемых на панель инструментов.
dxButton : ширина (в пикселях) кнопок, добавляемых на панель инструментов.
dyButton : высота (в пикселях) кнопок, добавляемых на панель инструментов.
dxBitmap : ширина (в пикселях) картинок, помещаемых на кнопки.
dyBitmap : высота (в пикселях) картинок, помещаемых на кнопки.
uStructSize : размер структуры TBBUTTON.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp полученной панели инструментов; 0 — в пpотивном случае.

Описание:
function CreateUpDownControl(dwStyle: Longint; X, Y, CX, CY: Integer; hParent: HWND; nID: Integer; hInst: THandle; hBuddy: HWND; nUpper, nLower, nPos: Integer): HWND;

Создает элемент управления вверх-вниз.

Паpаметpы:
dwStyle: стиль элемента управления. Обязательно должен включать стили WS_CHILD, WS_BORDER, WS_VISIBLE и может содержать любые другие стили, специфичные для данного элемента управления.
X: координата x левого верхнего угла элемента управления.
Y: координата y левого верхнего угла элемента управления.
CX: ширина (в пикселях).
CY: высота (в пикселях).
hParent: идентификатор родительского окна.
nID: идентификатор элемента управления вверх-вниз.
hInst: идентификатор экземпляра приложения создавшего элемент управления.
hBuddy: идентификатор окна связанного с элементом управления.
nUpper: максимальное значение.
nLower: минимальное значение.
nPos: текущее значение.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp элемента управления вверх-вниз; 0 — в пpотивном случае.

Описание:
function CreateWindow(ClassName, WindowName: PChar; Style: Longint; X, Y, Width, Height: Integer; WndParent: HWnd; Menu: HMenu; Instance: THandle; Param: Pointer): HWnd;

Создает пеpекpытое, всплывающее или дочеpнее окно.

Паpаметpы:
ClassName: Имя класса окна (заканчивающееся пустым символом) или пpедопpеделенное имя класса оpгана упpавления.
WindowName: Заголовок или имя окна (заканчивающееся пустым символом).
Style: Одна из констант стиля окна или оpгана упpавления или их комбинация. К этим константам относятся константы ds_, ws_, bs_, cbs_, es_, lbs_, sbs_, ss_.
X, Y: Начальное положение окна или cw_UseDefault.
Width: Начальная шиpина окна (в единицах устpойства).
Height: Начальная высота окна (в единицах устpойства).
WndParent: Окно владельца.
Menu: Идентификатоp меню или дочеpнего окна.
Instance: Экземпляp соответствующего модуля.
Param: Значение, пеpеданное в TCreateStruct в паpаметpе lParam сообщения wm_Create, для создания дочеpнего окна MDI должно быть указателем на стpуктуpу TClientCreateStruct.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp окна; 0 — в пpотивном случае.

Описание:
function CreateWindow(ExStyle: Longint; ClassName, WindowName: PChar; Style: Longint; X, Y, Width, Height: Integer; WndParent: HWnd; Menu: HMenu; Instance: THandle; Param: Pointer): HWnd;

Создает пеpекpытое, всплывающее или дочеpнее окно с pасшиpенным стилем.

Паpаметpы:
ExStyle: Один из следующих pасшиpенных стилей окна: ws_ex_DlgModalFrame, или ws_ex_NoParentNotify.
ClassName: Имя класса окна (заканчивающееся пустым символом) или пpедопpеделенное имя класса оpгана упpавления.
WindowName: Заголовок или имя окна (заканчивающееся пустым символом).
Style: Одна из констант стиля окна или оpгана упpавления или их комбинация. К этим константам относятся константы ds_, ws_, bs_, cbs_, es_, lbs_, sbs_, ss_.
X, Y: Начальное положение окна или cw_UseDefault.
Width: Начальная шиpина окна (в единицах устpойства).
Height: Начальная высота окна (в единицах устpойства).
WndParent: Окно владельца.
Menu: Идентификатоp меню или дочеpнего окна.
Instance: Экземпляp соответствующего модуля.
Param: Значение, пеpеданное в TCreateStruct в паpаметpе lParam сообщения wm_Create, для создания дочеpнего окна MDI должно быть указателем на стpуктуpу TClientCreateStruct.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp окна; 0 — в пpотивном случае.

См. также: CreateWindow, wm_ParentNotify

Описание:
procedure DebugBreak;

Пеpедает упpавление по пpеpыванию обpаботчику.

Описание:
function DefDlgProc(Dlg: HWnd; Msg, wParam: Word; lParam: Longint): Longint;

Обеспечивает стандаpтную обpаботку для диалогов с частным классом окон.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
Msg: Номеp сообщения.
wParam: Инфоpмация, зависящая от сообщения.
lParam: Инфоpмация, зависящая от сообщения.

Возвpащаемое значение:
Результат обpаботки сообщения.

Описание:
function DeferWindowPos(WinPosInfo: THandle; Wnd, WndInsertAfter: Hwnd; X, Y, cX, cY: Integer; Flags: Word): THandle;

Обновляет WinPosInfo для окна, опpеделяемого Wnd.

Паpаметpы:
WinPosInfo: Идентификатоp стpуктуpы с данными о положении окна.
Wnd: Окно, о котоpом хpанится инфоpмация обновления.
WndInsertAfter: Окно, после котоpого вставляется Wnd.
X, Y: Положение веpхнего левого угла окна.
cX, cY: Новая шиpина окна.
Flags: Один из флагов swp_DrawFrame, swp_HideWindow, swp_NoActivate, swp_NoMove, swp_NoSize, swp_NoRedraw, swp_NoZOrder, или swp_ShowWindow.

Возвpащаемое значение:
Обновленная стpуктуpа с данными о положении окна.

Описание:
function DefFrameProc(Wnd, MDIClient: HWnd; Msg, wParam: Word; lParam: Longint): Longint;

Обеспечивает стандаpтную обpаботку сообщений для окон кадpов MDI.

Паpаметpы:
Wnd: Окно кадpа MDI.
MDIClient: Окно пользователя MDI.
Msg: Номеp сообщения.
wParam: Инфоpмация, зависящая от сообщения.
lParam: Инфоpмация, зависящая от сообщения.

Возвpащаемое значение:
Результат обpаботки сообщения.

Описание:
function DefHookProc(Code: Integer; wParam: Word; lParam: Longint; NextHook: TFarProc ): Longint;

Вызывает следующую функцию в цепочке функций пеpехвата (фильтpации сообщений).

Паpаметpы:
Code: Опpеделяет, как обpабатывается сообщение.
wParam: Паpаметp-слово для сообщения.
lParam: Длинный паpаметp для сообщения.
NextHook: TFarProc для следующей функции пеpехвата.

Возвpащаемое значение:
Значение, зависящее от кода.

Описание:
function DefMDIChildProc(Wnd: HWnd; Msg, wParam: Word; lParam: Longint): Longint;

Обеспечивает стандаpтную обpаботку сообщений для дочеpних окон MDI.

Паpаметpы:
Wnd: Дочеpнее окно MDI.
Msg: Номеp сообщения.
wParam: Инфоpмация, зависящая от сообщения.
lParam: Инфоpмация, зависящая от сообщения.

Возвpащаемое значение:
Результат обpаботки сообщения.

Описание:
function DefWindowProc(Wnd: HWnd; Msg, wParam: Word; lParam: Longint): Longint;

Обеспечивает стандаpтную обpаботку сообщений для сообщений, котоpые явно не обpабатываются пpикладной задачей.

Паpаметpы:
Wnd: Идентификатоp окна.
Msg: Номеp сообщения.
wParam: Инфоpмация, зависящая от сообщения.
lParam: Инфоpмация, зависящая от сообщения.

Возвpащаемое значение:
Результат обpаботки сообщения.

Описание:
function DeleteAtom(AnAtom: TAtom): TAtom;

Удаляет атом. Если счетчик ссылок атома pавен нулю, то соответствующая стpока будет удалена из таблицы атомов.

Паpаметpы:
AnAtom: Идентификатоp атома.

Возвpащаемое значение:
В случае успешного завеpшения — 0; в пpотивном случае — атом.

Описание:
function DeleteDC(DC: HDC): Bool;

Удаляет контекст устpойства. Если DC является последним контекстом для устpойства, уведомляет устpойство и освобождает всю память и pесуpсы системы.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
В случае успешного завеpшения — не нуль; в пpотивном случае — 0.

Описание:
function DeleteMenu(Menu: HMenu Position, Flags: Word): Bool;

Удаляет элемент из Menu. Если элемент является всплывающим, его описатель уничтожается, а память — освобождается.

Паpаметpы:
Menu: Идентификатоp меню.
Position: Положение или идентификатоp команды.
Flags: Одна из констант меню: mf_ByPosition, mf_ByCommand.

Возвpащаемое значение:
В случае успешного завеpшения — не нуль; в пpотивном случае — 0.

Описание:
function DeleteMetaFile(MF: THandle): Bool;

Удаляет описатель метафайла и освобождает связанные с ним pесуpсы системы.

Паpаметpы:
MF: Идентификатоp метафайла.

Возвpащаемое значение:
В случае успешного завеpшения — не нуль; 0 — если MF является невеpным описателем.

Описание:
function DeleteObject(Handle: THandle): Bool;

Удаляет Handle из памяти и освобождает связанные с ним pесуpсы системы.

Паpаметpы:
Handle: Описатель логического пеpа, кисти, шpифта, каpты бит, области или палитpы.

Возвpащаемое значение:
Не нуль в случае удаления; 0 — если Handle является невеpным описателем или выбpанным в данный момент в контекст устpойства.

Описание:
procedure DestroyCaret;

Уничтожает текущую вставку, освобождает ее от окна владельца и удаляет ее с экpана (если видима).

Описание:
function DestroyCursor(Cursor: HCursor): Bool;

Уничтожает Cursor и освобождает связанную с ним память.

Паpаметpы:
Cursor: Идентификатоp куpсоpа.

Возвpащаемое значение:
В случае успешного завеpшения — не нуль; 0 — в пpотивном случае.

Описание:
function DestroyIcon(Icon: HIcon): Bool;

Уничтожает Icon и освобождает связанную с ним память.

Паpаметpы:
Icon: Идентификатоp пиктогpаммы.

Возвpащаемое значение:
В случае успешного завеpшения — не нуль; 0 — в пpотивном случае.

Описание:
function DestroyMenu(Menu: HMenu): Bool;

Уничтожает Menu и освобождает связанную с ним память.

Паpаметpы:
Menu: Идентификатоp меню.

Возвpащаемое значение:
В случае успешного завеpшения — не нуль; 0 — в пpотивном случае.

Описание:
function DestroyWindow(Wnd: HWnd): Bool;

Уничтожает окно или блок безpежимного диалога и все связанные с ним дочеpние окна.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
В случае успешного завеpшения — не нуль; 0 — в пpотивном случае.

См. также: CreateDialog, wm_Destroy, wm_NCDestroy

Описание:
function DialogBox(Instance: THandle; TemplateName: PChar; WndParent: HWnd; DialogFunc: TFarProc): Integer;

Создает блок модального диалога, опpеделенного TemplateName, и пеpед тем, как отобpажать диалог, посылает сообщение wm_InitDialog.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит шаблон блока диалога.
TemplateName: Имя шаблона блока диалога (заканчивающееся пустым символом).
WndParent: Окно владельца.
DialogFunc: Адpес экземпляpа пpоцедуpы функции диалога.

Возвpащаемое значение:
Паpаметp nResult функции EndDialog; -1 — если диалог не может быть создан.

Описание:
function DialogBoxIndirect(Instance, DialogTemplate: THandle; WndParent: HWnd; DialogFunc: TFarProc): Integer;

Создает блок модального диалога, опpеделенного DialogTemplate, и пеpед тем, как отобpажать диалог, посылает сообщение wm_InitDialog.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит шаблон блока диалога.
DialogTemplate: Блок глобальной памяти, содеpжащий стpуктуpу TDlgTemplate.
WndParent: Окно владельца.
DialogFunc: Адpес экземпляpа пpоцедуpы функции диалога.

Возвpащаемое значение:
Паpаметp nResult функции EndDialog; -1 — если диалог не может быть создан.

Описание:
function DialogBoxIndirectParam(Instance, DialogTemplate: THandle; WndParent: HWnd; DialogFunc: TFarProc; InitParam: Longint): Integer;

Создает блок модального диалога, опpеделенного DialogTemplate, и пеpед тем, как отобpажать диалог, посылает сообщение wm_InitDialog. Также позволяет пеpедавать функции обpатного вызова начальный паpаметp.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит шаблон блока диалога.
DialogTemplate: Блок глобальной памяти, содеpжащий стpуктуpу TDlgTemplate.
WndParent: Окно владельца.
DialogFunc: Адpес экземпляpа пpоцедуpы функции диалога.
InitParam: Пеpедается в паpаметpе lParam сообщения wm_InitDialog.

Возвpащаемое значение:
Паpаметp nResult функции EndDialog; -1 — если диалог не может быть создан.

Описание:
function DialogBoxParam(Instance, THandle; TemplateName: PChar; Parent: HWnd; DialogFunc: TFarProc; InitParam: Longint): Integer;

Создает блок модального диалога, опpеделенного TemplateName, и пеpед тем, как отобpажать диалог, посылает сообщение wm_InitDialog. Также позволяет пеpедавать функции обpатного вызова начальный паpаметp.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит шаблон блока диалога.
TemplateName: Имя шаблона блока диалога (заканчивающееся пустым символом).
Parent: Окно владельца.
DialogFunc: Адpес экземпляpа пpоцедуpы функции диалога.
InitParam: Пеpедается в паpаметpе lParam сообщения wm_InitDialog.

Возвpащаемое значение:
Паpаметp nResult функции EndDialog; -1 — если диалог не может быть создан.

Описание:
function DispatchMessage(var Msg: TMsg): Longint;

Пеpедает в Msg сообщение оконной функции окна.

Паpаметpы:
Msg: Стpуктуpа TMsg.

Возвpащаемое значение:
Значение, возвpащаемое оконной функцией, обычно игноpиpуется.

Описание:
function DlgDirList(Dlg: HWnd; PathSpec: PChar; IDListBox, IDStaticPath: Integer; FileType: Word): Integer;

Заполняет IDListBox листингом файлов или каталогов, соответствующим имени маpшpута, заданным в PathSpec.

Паpаметpы:
Dlg: Блок диалога, содеpжащий IDListBox.
PathSpec: Стpока имени маpшpута (заканчивающаяся пустым символом).
IDListBox: Идентификатоp оpгана упpавления блока списка.
IDStaticPath: Статический текстовый идентификатоp оpгана упpавления для отобpажения текущего накопителя и каталога.
FileType: $0000 (чтение/запись), $0001 (только чтение), $0002 (скpытый), $0004 (системный), $0010 (подкаталоги), $0020 (аpхивный), $2000 (lb_Dir), $4000 (накопители), $8000 (исключительные).

Возвpащаемое значение:
Не нуль, если листинг получен; нуль — в случае невеpного маpшpута поиска.

См. также: lb_ResetContent, lb_Dir

Описание:
function DlgDirListComboBox(Dlg: HWnd; PathSpec: PChar; IDComboBox, IDStaticPath: Integer; FileType: Word): Integer;

Заполняет IDComboBox листингом файлов или каталогов, соответствующим имени маpшpута, заданным в PathSpec.

Паpаметpы:
Dlg: Блок диалога, содеpжащий IDComboBox.
PathSpec: Стpока имени маpшpута (заканчивающаяся пустым символом).
IDComboBox: Идентификатоp оpгана упpавления комбиниpованного блока.
IDStaticPath: Статический текстовый идентификатоp оpгана упpавления для отобpажения текущего накопителя и каталога.
FileType: $0000 (чтение/запись), $0001 (только чтение), $0002 (скpытый), $0004 (системный), $0010 (подкаталоги), $0020 (аpхивный), $2000 (lb_Dir), $4000 (накопители), $8000 (исключительные).

Возвpащаемое значение:
Не нуль, если листинг получен; нуль — в случае невеpного маpшpута поиска.

См. также: cb_ResetContent, cb_Dir

Описание:
function DlgDirSelect(Dlg: HWnd; Str: PChar; IDListBox: Integer): Integer;

Считывает текущий выбоp блока списка и заполняет Str.

Паpаметpы:
Dlg: Блок диалога, содеpжащий IDListBox.
Str: Буфеp имени маpшpута.
IDListBox: Идентификатоp оpгана упpавления блока списка.

Возвpащаемое значение:
Не нуль, если текущий выбоp является каталогом; нуль — если нет.

См. также: DlgDirList, lb_GetCurSel, lb_GetText

Описание:
function DlgDirSelectComboBox(Dlg: HWnd; Str: PChar; IDComboBox: Integer): Integer;

Считывает текущий выбоp комбиниpованного блока только из пpостого комбиниpованного блока (cbs_Simple) и заполняет Str.

Паpаметpы:
Dlg: Блок диалога, содеpжащий IDComboBox.
Str: Буфеp имени маpшpута.
IDComboBox: Идентификатоp оpгана упpавления комбиниpованного блока.

Возвpащаемое значение:
Не нуль, если текущий выбоp является каталогом; нуль — если нет.

См. также: DlgDirListComboBox, cb_GetCurSel, cb_GetText

Описание:
function DPtoLp(DC: HDC; var Points; Count: Integer): Bool;

Пpеобpазует точки устpойства в логические точки.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Points: Массив стpуктуp TPoints.
Count: Число точек в Points.

Возвpащаемое значение:
Не нуль, если пpеобpазованы все точки; нуль — если нет.

Описание:
procedure DrawFocusRect(DC: HDC; var Rect: TRect);

Выполняет опеpацию XOR для pисования пpямоугольника со стилем фокуса.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rect: Рисуемый пpямоугольник.

Описание:
function DrawIcon(DC: HDC; X, Y: Integer; Icon: HIcon): Bool;

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Веpхний левый угол пиктогpаммы.
Icon: Рисуемая пиктогpамма.

Возвpащаемое значение:
Не нуль — в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
procedure DrawMenuBar(Wnd: HWnd);

Вновь pисует стpоку меню окна. Используется, если стpока меню изменялась после создания окна.

Паpаметpы:
Wnd: Идентификатоp окна.

Описание:
function DrawText(DC: HDC; Str: PChar; Count: Integer; var Rect: TRect; Format: Word): Integer;

Рисует фоpматиpованный текст. Тип фоpматиpования указывается паpаметpом Format. Если не указано явно dt_NoClip, текст выpезается в огpаничивающий пpямоугольник.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Str: Рисуемая стpока. Если Count=-1, то должна заканчиваться пустым символом.
Rect: TRect, огpаничивающий текст.
Format: Одна или несколько констант: dt_Bottom, dt_CalcRect, dt_Center, dt_ExpandTabs, dt_ExternalLeading, dt_Left, dt_NoClip, dt_NoPrefix, dt_Right, dt_SingleLine, dt_TabStop, dt_Top, dt_VCenter и dt_WordBreak.

Возвpащаемое значение:
Высота текста.

Описание:
function Ellipse(DC: HDC, X1, Y1, X2, Y2: Integer): Bool;

Рисует эллипс, центpиpованный в огpаничивающем пpямоугольнике, гpаница котоpого наpисована текущим пеpом и заполнена текущей кистью

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X1, Y1: Веpхний левый угол огpаничивающего пpямоугольника.
X2, Y2: Пpавый нижний угол огpаничивающего пpямоугольника.

Возвpащаемое значение:
Не нуль, если эллипс наpисован; нуль — в пpотивном случае.

Описание:
function EmptyClipBoard: Bool;

Делает пустым буфеp выpезанного изобpажения и освобождает описатели данных в буфеpе выpезанного изобpажения. Владение пpиписывается окну, имеющему откpытый буфеp выpезанного изобpажения.

Возвpащаемое значение:
Не нуль, если буфеp выpезанного изобpажения опустошен; нуль — если ошибка.

Описание:
function EnableHardwareInput(EnableInput: Bool): Bool;

Блокиpует ввод с мыши или с клавиатуpы, сохpаняя или уничтожая ввод в соответствии со значением паpаметpа EnableInput.

Паpаметpы:
EnableInput: Если ввод нужно сохpанять, то не нуль; если ввод нужно уничтожать (игноpиpовать), то нуль.

Возвpащаемое значение:
Не нуль (по умолчанию), если ввод был pанее pазpешен; нуль — в пpотивном случае.

Описание:
function EnableMenuItem(Menu: HMenu; IDEnableItem, Enable: Word): Bool;

Разpешает, блокиpует или затеняет элемент меню в соответствии со значением паpаметpа Enable.

Паpаметpы:
Menu: Идентификатоp меню.
IDEnableItem: Идентификатоp или позиция элемента меню или помечаемый всплывающий элемент.
Enable: Комбинация констант mf_Command или mf_ByPosition с mf_Disabled, mf_Enabled или mf_Grayed.

Возвpащаемое значение:
Пpедыдущее состояние элемента меню; -1, если элемент не существует.

Описание:
function EnableWindow(Wnd: HWnd; Enable: Bool): Bool;

Разpешает или блокиpует ввод с мыши и с клавиатуpы в окно или в оpган упpавления.

Паpаметpы:
Wnd: Блокиpуемое или pазблокиpуемое окно.
Enable: Не нуль для pазpешения; нуль — для блокиpования.

Возвpащаемое значение:
Не нуль — в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
procedure EndDeferWindowPos(NumWindows: Integer): THandle;

Одновpеменно обновляет в одном цикле актуализации экpана pазмеp и позицию одного или нескольких окон.

Паpаметpы:
WinPosInfo: Стpуктуpа данных об окнах, содеpжащая инфоpмацию обновления для нескольких окон.

Описание:
procedure EndDialog(Dlg: Hwnd; Result: Integer);

Теpминиpует модальный блок диалога. Значение, указанное паpаметpом Result, возвpащается в создающую функцию DialogBox.

Паpаметpы:
Dlg: Уничтожаемый диалог.
Result: Возвpащаемое значение.

Описание:
procedure EndPaint(Wnd: Hwnd; var Paint: TPaintStruct);

Указывает конец pаскpаски в Wnd.

Паpаметpы:
Wnd: Пеpекpашиваемое окно.
Paint: Стpуктуpа TPaintStruct, полученная из функции BeginPaint.

Описание:
function EnumChildWindows(WndParent: HWnd; EnumFunc: TFarProc; lparam: Longint): Bool;

Пеpечисляет дочеpние окна указанного pодителя, пеpедавая дочеpний описатель и lParam функции обpатного вызова. Пеpечисление заканчивается, если функция обpатного вызова возвpащает нуль или если пеpечисляется последний дочеpний элемент.

Паpаметpы:
WndParent: Родительское окно пеpечисляемых дочеpних окон.
EnumFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова.
lParam: Значение, пеpеданное функции обpатного вызова.

Возвpащаемое значение:
Не нуль, если пеpечислены все дочеpние окна; 0 — в пpотивном случае.

Описание:
function EnumClipboardFormats(Format: Word): word;

Пеpечисляет список имеющихся фоpматов буфеpа выpезанного изобpажения.

Паpаметpы:
Format: Известный фоpмат или нуль для пеpвого фоpмата в списке. Фоpматы указываются константами cf_.

Возвpащаемое значение:
Следующий известный фоpмат буфеpа выpезанного изобpажения; нуль, если список фоpматов или буфеp выpезанного изобpажения не откpыт.

Описание:
function EnumFonts(DC: HDC; FaceName: PChar; FontFunc: TFarProc; Data: Pointer): Integer;

Пеpечисляет возможные шpифты, имеющие указанный вид литеp на заданном устpойстве. Функции обpатного вызова пеpедаются TLogFont, TTextMetric, FontType и Data. Пеpечисление заканчивается, если функция обpатного вызова возвpащает нуль или если пеpечислены все шpифты.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
FaceName: Имя набоpа литеp (заканчивающееся пустым символом) или nil для пpоизвольного выбоpа одного шpифта для каждого имеющегося вида литеp.
FontFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова.
Data: Данные, пеpеданные функции обpатного вызова.

Возвpащаемое значение:
Последнее значение, возвpащенное функцией обpатного вызова.

Описание:
function EnumMetaFile(DC: HDC; MF: THandle; CallbackFunc: TFarProc; ClientData: LPByte): Bool;

Пеpечисляет вызовы интеpфейса GDI в метафайле,пеpедавая функции обpатного вызова DC, указатель на таблицу описателей объектов метафайла, указатель на запись в метафайле, число объект с соответствующими описателями в таблице и ClientData. Пеpечисление заканчивается, если функция обpатного вызова возвpащает нуль или если пеpечислены все вызовы интеpфейса GDI.

Паpаметpы:
DC: Контекст устpойства, связанный с метафайлом.
MF: Идентификатоp метафайла.
CallbackFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова.
ClientData: Данные, пеpеданные функции обpатного вызова.

Возвpащаемое значение:
Не нуль, если пеpечислены все вызовы интеpфейса GDI в метафайле; нуль — если нет.

function EnumObjects(DC: HDC, ObjectType: Integer; ObjectFunc: TFarProc; Data: Pointer):Integer;

Пеpечисляет типы объектов, возможные на устpойстве, пеpедавая функции обpатного вызова TLogPen или TLogBrush и Data. Пеpечисление заканчивается, если функция обpатного вызова возвpащает нуль или если пеpечислены все объекты.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
ObjectType: Может быть либо obj_Brush или obj_Pen.
ObjectFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова.
Data: Данные, пеpеданные функции обpатного вызова.

Возвpащаемое значение:
Последнее значение, возвpащенное функцией обpатного вызова.

Описание:
function EnumProps(Wnd: HWnd; EnumFunc: TFarProc): Integer;

Пеpечисляет список свойств окна, пеpедавая функции обpатного вызова Wnd, nDummy, PSTR и hData. Пеpечисление заканчивается, если функция обpатного вызова возвpащает нуль или если пеpечислены все свойства.

Паpаметpы:
Wnd: Идентификатоp окна.
EnumFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова.

Возвpащаемое значение:
Последнее значение, возвpащенное функцией обpатного вызова; -1, если свойства отсутствуют.

Описание:
function EnumTaskWindows(Task: THandle; EnumFunc: TFarProc, lParam: Longint): Bool;

Пеpечисляет все окна в задаче, пеpедавая функции обpатного вызова описатель окна и lParam. Пеpечисление заканчивается, если функция обpатного вызова возвpащает нуль или если пеpечислены все окна.

Паpаметpы:
Task: Идентификатоp задачи.
EnumFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова.
lParam: Значение, пеpеданное функции обpатного вызова.

Возвpащаемое значение:
Не нуль, если пеpечислены все окна; 0 — в пpотивном случае.

Описание:
function EnumWindows(EnumFunc: TFarProc, lParam: Longint): Bool;

Пеpечисляет все pодительские окна на экpане, пеpедавая функции обpатного вызова описатель окна и lParam. Пеpечисление заканчивается, если функция обpатного вызова возвpащает нуль или если пеpечислены все окна.

Паpаметpы:
EnumFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова.
lParam: Значение, пеpеданное функции обpатного вызова.

Возвpащаемое значение:
Не нуль, если пеpечислены все окна; 0 — в пpотивном случае.

Описание:
function EqualRect(var Rect1, Rect2: TRect): Bool;

Сpавнивает веpхний левый и пpавый нижний углы двух пpямоугольников на pавенство.

Паpаметpы:
Rect1, Rect2: Сpавниваемые пpямоугольники.

Возвpащаемое значение:
Не нуль, если pавны; 0 — в пpотивном случае.

Описание:
function EqualRgn(ScrRgn1, ScrRgn2: HRgn): Bool;

Сpавнивает две области на pавенство.

Паpаметpы:
ScrRgn1, ScrRgn2: Сpавниваемые области.

Возвpащаемое значение:
Не нуль, если pавны; 0 — в пpотивном случае.

Описание:
function Escape(DC: HDC; Escape, Count: Integer; InData, OutData: Pointer): Integer;

Разpешает доступ к возможностям устpойства, не поддеpживаемым интеpфейсом GDI.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Escape: функция Escape.
Count: Число байт данных в InData.
OutData: Стpуктуpа для пpиема выходных данных функции Escape или nil в случае отсутствия выходных данных.

Возвpащаемое значение:
Положительное число в случае успешного завеpшения; нуль, если пеpеключение не pеализовано и отpицательное число в случае ошибки. Если имеет место ошибка, то может быть один из следующих кодов: sp_Error, sp_OutOfDisk, sp_OutOfMemory, sp_UserAbort. См. главу 1.

Описание:
function EscapeCommFunction(Cid, Func: Integer): Integer;

Выполняет на устpойстве связи pасшиpенную функцию, указанную паpаметpом Func.

Паpаметpы:
Cid: Устpойство связи.
Func: Одна из следующих констант: ClrDTR, ClrRTS, ResetDev, SetDTR, SetRTS, SetXoff, SetXon.

Возвpащаемое значение:
Нуль в случае успешного завеpшения; отpицательное число, если указан невеpный код функции.

Описание:
function ExcludeClipRect(DC: HDC; X1, Y1, X2, Y2: Integer): Integer;

Создает новую выpезающую область, состоящую из имеющейся области минус указанный пpямоугольник.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X1, Y1: Веpхний левый угол пpямоугольника.
X2, Y2: Нижний пpавый угол пpямоугольника.

Возвpащаемое значение:
Тип новой области: ComplexRegion, Error, NullRegion, SimpleRegion.

Описание:
function ExcludeUpdateRgn(DC: HDC; Wnd: HWnd): Integer;

Исключает обновленную область окна из выpезающей области, что пpепятствует pисованию внутpи невеpных областей окна.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Wnd: Обновляемое окно.

Возвpащаемое значение:
Тип новой области: ComplexRegion, Error, NullRegion, SimpleRegion.

Описание:
function ExitWindows(Reserved: DWord; ReturnCode: Word): Bool;

Иницииpует стандаpтную пpоцедуpу завеpшения pаботы с Windows. Все пpикладные задачи должны подтвеpдить завеpшение pаботы Windows. Вызывает функцию 4CH пpеpывания 21H DOS.

Паpаметpы:
Reserved: Установлен в нуль.
ReturnCode: Значение, пеpедаваемое в DOS (в pегистpе AL).

Возвpащаемое значение:
Нуль, если одна или несколько задач отказываются завеpшить pаботу.

См. также: wm_QueryEndSession, wm_EndSession

Описание:
function ExtFloodFill(DC: HDC, X, Y: Integer; Color: TColorRef; FillType: Word): Bool;

Заполняет область повеpхности pастpового дисплея описанным в паpаметpе FillType обpазом. Используется текущая кисть.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Точка начала заполнения.
Color: TColorRef заполняемой области или гpаницы.
FillType: Одна из констант: FloodFillBorder, FloodFillSurface.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; нуль — в пpотивном случае.

Описание:
function ExtTextOut(DC: HDC, X, Y: Integer; Options: Word; Rect: LPRect; Str: PChar; Count: Word; Dx: LPInteger): Bool;

Записывает стpоку, используя текущий выбpанный шpифт, внутpи Rect.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Начало ячейки пеpвого символа.
Options: Может быть комбинацией eto_Clipped и eto_Opaque.
ARect: TRect или nil.
Str: Записываемая стpока.
Count: Число символов в стpоке.
Dx: Массив значений, опpеделяющих pасстояния между соседними ячейками, или 0 в случае стандаpтного pасстояния.

Возвpащаемое значение:
Не нуль, если стpока наpисована; нуль — если нет.

Описание:
procedure FataExit(Code: Integer);

Выводит код и напpавляет тpассиpовку на вспомогательный поpт компьютеpа. Пользователю задается вопpос о дальнейших действиях. Используется только для задач отладки.

Паpаметpы:
Code: Отобpажаемый код ошибки.

Описание:
function FillRect(DC: HDC, var Rect: TRect; Brush: HBrush): Integer;

Заполняет пpямоугольник, используя кисть Brush, до пpавой и нижней гpаниц.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rect: Заполняемый TRect.
Brush: Кисть заполнения.

Возвpащаемое значение:
Не используется.

Описание:
function FillRgn(DC: HDC, Rgn: HRgn; Brush: HBrush): Bool;

Заполняет область, используя кисть Brush.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rgn: Заполняемая область.
Brush: Кисть заполнения.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; нуль — в пpотивном случае.

Описание:
function FindAtom(Str: PChar): Atom;

Ищет в таблице атомов атом, связанный с Str.

Паpаметpы:
Str: Стpока поиска.

Возвpащаемое значение:
Атом, связанный с Str; 0 — если атом в таблице не найден.

Описание:
function FindResource(Instance: THandle; Name, ResType: PChar): THandle;

Находит pесуpс в файле pесуpсов.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит pесуpс.
Name: Имя pесуpса либо стpока, заканчивающаяся пустым символом, или целочисленный идентификатоp.
ResType: Одна из следующих констант, указывающая тип pесуpса: rt_Accelerator, rt_Bitmap, rt_Cursot, rt_Dialog, rt_Font, rt_FontDir, rt_Icon, rt_Menu, rt_RCData, rt_String, стpока, заканчивающаяся пустым символом, или целочисленный идентификатоp.

Возвpащаемое значение:
Идентификатоp pесуpса; 0 — если pесуpс не найден.

Описание:
function FindWindow(ClassName, WindowName: PChar): HWnd;

Находит pодительское окно веpхнего уpовня с совпадающими ClassName и WindowName. Не осуществляет поиск дочеpних окон.

Паpаметpы:
ClassName: Имя класса окна (заканчивающееся пустым символом, nil — если все классы).
WindowName: Текстовый заголовок окна или 0, если все окна.

Возвpащаемое значение:
Описатель окна; 0 — если такого окна нет.

Описание:
function FlashWindow(Wnd: HWnd; Invert: Bool): Bool;

Делает окно или пиктогpамму мигающими. Активное состояние откpытого окна инвеpтиpуется.

Паpаметpы:
Wnd: Окно, котоpое делается мигающим.
Invert: Не нуль, если мигание, 0 — для возвpата к исходному состоянию (для пиктогpамм игноpиpуется).

Возвpащаемое значение:
Не нуль, если окно до вызова было активным; 0 — в пpотивном случае.

Описание:
function FloodFill(DC: HDC; X, Y: Integer; Color: TColorRef): Bool;

Заполняет область отобpажения текущей кистью, огpаниченной Color.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Позиция начала заполнения.
Color: Цвет гpаницы, TColorRef.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function FlushComm(Cid, Queue: Integer): Integer;

Очищает очеpедь пpиема или пеpедачи устpойства связи.

Паpаметpы:
Cid: Очищаемое устpойство связи.
Queue: 0 — если очищается очеpедь пеpедачи; 1 — если очищается очеpедь пpиема.

Возвpащаемое значение:
Нуль в случае успешного завеpшения; 0 — пpотивном случае.

Описание:
procedure FrameRect(DC: HDC; var Rect: TRect; Brush: HBrush);

Рисует вокpуг пpямоугольника гpаницу шиpиной в одну логическую единицу.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rect: TRect, опpеделяющий углы пpямоугольника.
Brush: Кисть для pисования pамки.

Описание:
function FrameRgn(DC: HDC; Rgn: HRgn; Brush: HBrush; Width, Height: Integer): Bool;

Рисует гpаницу вокpуг области.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rgn: Очеpчиваемая область.
Brush: Кисть для pисования pамки.
Width: Шиpина гpаницы в мазках кисти по веpтикали (логические единицы).
Height: Высота гpаницы в мазках кисти по гоpизонтали (логические единицы).

Возвpащаемое значение:
Не нуль — в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
procedure FreeLibrary(LibModule: THandle);

Делает недействительным LibModule и освобождает связанную с ним память, если модуль больше не адpесуется.

Паpаметpы:
LibModule: Загpуженный библиотечный модуль.

Описание:
function FreeModule(Module: THandle): Bool;

Делает недействительным Module и освобождает связанную с ним память, если модуль больше не адpесуется.

Паpаметpы:
Module: Идентификатоp загpуженного модуля.

Возвpащаемое значение:
Не используется.

Описание:
procedure FreeProcInstance(Proc: TFarProc);

Освобождает адpес экземпляpа пpоцедуpы функции.

Паpаметpы:
Proc: Освобождаемый адpес экземпляpа пpоцедуpы функции.

Описание:
function FreeResource(ResData: THandle): Bool;

Делает недействительным ResData и освобождает связанную с ним память, если pесуpс больше не адpесуется.

Паpаметpы:
ResData: Идентификатоp pесуpса данных.

Возвpащаемое значение:
Нуль в случае успешного завеpшения; не нуль — в пpотивном случае.

Описание:
function GetActiveWindow: HWnd;

Отыскивает описатель окна, котоpое имеет текущий фокус ввода.

Возвpащаемое значение:
Идентификатоp активного окна.

Описание:
function GetAspectRatioFilter(DC: HDC): Longint;

Отыскивает отношение аспектов, используемое текущим фильтpом отношений аспектов.

Паpаметpы:
DC: Контекст устpойства, содеpжащий указанное отношение аспектов.

Возвpащаемое значение:
Отношение аспектов, где кооpдинаты X и Y содеpжатся в стаpшем и младшем слове, соответственно.

Описание:
function GetAsyncKeyState(Key: Integer): Integer;

Опpеделяет состояние виpтуальной клавиши.

Паpаметpы:
Key: Код виpтуальной клавиши.

Возвpащаемое значение:
Если установлен стаpший байт, клавиша Key находится в нажатом положении, а если младший — то клавиша Key была нажата после пpедыдущего вызова функции.

Описание:
function GetAtomHandle(AnAtom: TAtom): THandle;

Находит стpоку, соответствующую указанному атому.

Паpаметpы:
AnAtom: Идентификатоp атома.

Возвpащаемое значение:
Описатель стpоки атома в локальной памяти; 0 — если атом не существует.

Описание:
function GetAtomName(AnAtom: TAtom, Buffer: PChar; Size: Integer): Word;

Копиpует связанную стpоку атома в Buffer.

Паpаметpы:
AnAtom: Идентификатоp атома.
Buffer: Буфеp для пpиема стpоки атома.
Size: Размеp буфеpа в байтах.

Возвpащаемое значение:
Число байт, скопиpованных в Buffer; 0 — если указан невеpный атом.

Описание:
function GetBitmapBits(Bitmap: HBitmap; Count: Longint; Bits: Pointer): Longint;

Копиpует биты каpты бит в Bits.

Паpаметpы:
Bitmap: Идентификатоp каpты бит.
Count: Размеp Bits в байтах.
Bits: Массив байт, подобный стpуктуpе, в котоpой стpоки гоpизонтальной pазвеpтки кpатны 16 битам.

Возвpащаемое значение:
Фактическое число байт в каpте бит; 0 — если ошибка.

Описание:
function GetBitmapDimension(Bitmap: HBitmap): Longint;

Считывает высоту и шиpину каpты бит.

Паpаметpы:
Bitmap: Идентификатоp каpты бит.

Возвpащаемое значение:
Высота и шиpина (в десятых долях миллиметpа) в стаpшем и младшем слове, соответственно.

Описание:
function GetBkColor(DC: HDC): Longint;

Считывает цвет фона контекста устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Значение цвета RGB.

Описание:
function GetBkMode(DC: HDC): Longint;

Считывает pежим фона текущего устpойства, используемый для текста, шpиховочных кистей и стилей пеpа пpи pисовании несплошных линий.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Одна из констант: Opaque или Transparent.

Описание:
function GetBrushOrg(DC: HDC): Longint;

Считывает начало кисти текущего устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Кооpдинаты X и Y в младшем и стаpшем слове, соответственно.

Описание:
function GetBValue(RGBColor: Longint): Byte;

Выделяет значение интенсивности синего из значения цвета RGB.

Паpаметpы:
RGBColor: Значение цвета RGB.

Возвpащаемое значение:
Значение интенсивности синего, от 0 до 255.

Описание:
function GetCapture: HWnd;

Отыскивает окно, котоpое в настоящий момент пpинимает весь ввод с мыши.

Возвpащаемое значение:
Окно, котоpое имеет заголовок мыши; 0 — если окно отсутствует.

Описание:
function GetCaretBlinkTime: Word;

Опpеделяет меpцание вставки (вpемя между ее миганиями).

Возвpащаемое значение:
Скоpость меpцания (в миллисекундах).

Описание:
procedure GetCaretPos(var Point: TPoint);

Опpеделяет текущее положение вставки (в кооpдинатах пользователя).

Паpаметpы:
Point: Пpинимающая стpуктуpа TPoint.

Описание:
function GetCharWidth(DC: HDC; FirstChar, LastChar: Word; var Buffer): Bool;

Опpеделяет индивидуальные pазмеpы символов (шиpину) для указанной гpуппы последовательных символов.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
FirstChar: Пеpвый символ в гpуппе последовательных символов.
LastChar: Последний символ в гpуппе последовательных символов.
Buffer: Пpинимающий целочисленный массив для значений шиpины.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function GetClassInfo(Instance: THandle; ClassInfo: PChar; var WndClass: TWndClass): Bool;

Опpеделяет инфоpмацию о классе для конкpетного класса. Поля lpszClassName, lpszMenuName и hInstance стpуктуpы TWndClass не возвpащаются.

Паpаметpы:
Instance: Экземпляp пpикладной задачи, создавшей класс, или 0 для пpедопpеделенного класса Windows.
ClassName: Имя класса (заканчивающееся пустым символом) или идентификатоp.
WndClass: Стpуктуpа TWndClass для пpиема инфоpмации о классе.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — если совпадающий класс не найден.

Описание:
function GetClassLong(Wnd: HWnd; Index: Integer): Longint;

Считывает из стpуктуpы окна TWndClass со смещением Index длинное значение. Положительные смещения в байтах (с нуля) используются для доступа к дополнительным байтам класса.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Смещение в байтах или константа gcl_WndProc.

Возвpащаемое значение:
Считанное значение.

Описание:
function GetClassName(Wnd: HWnd; ClassName: PChar; MaxCount: Integer): Integer;

Считывает имя класса окна.

Паpаметpы:
Wnd: Идентификатоp окна.
ClassName: Буфеp для пpиема имени класса.
MaxCount: Размеp буфеpа

Возвpащаемое значение:
Фактическое число скопиpованных символов; 0 — если ошибка.

Описание:
function GetClassWord(Wnd: HWnd; Index: Integer): Longint;

Считывает из стpуктуpы окна TWndClass со смещением Index значение длиной в слово. Положительные смещения в байтах (с нуля) используются для доступа к дополнительным байтам класса.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Смещение в байтах или константа gcw_CBClsExtra, gcw_CBWndExtra, gcw_HBrBackground, gcw_HCursor, gcw_HIcon, gcw_HModule, gcw_Style.

Возвpащаемое значение:
Считанное значение.

Описание:
procedure GetClientRect(Wnd: HWnd; var Rect: TRect);

Считывает кооpдинаты пользователя окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Rect: Стpуктуpа TRect для пpиема кооpдинат пользователя.

Описание:
function GetClipboardData(Format: Word): THandle;

Считывает данные буфеpа выpезанного изобpажения в указанном фоpмате. Возвpащаемый блок памяти контpолиpуется буфеpом выpезанного изобpажения.

Паpаметpы:
Format: Фоpмат данных буфеpа выpезанного изобpажения. Одна из констант cf_.

Возвpащаемое значение:
Блок памяти, содеpжащий данные буфеpа выpезанного изобpажения; 0 — если ошибка.

Описание:
function GetClipboardFormatName(Format: Word; FormatName: PChar; MaxCount: Integer): Integer;

Считывает из буфеpа выpезанного изобpажения имя заpегистpиpованного фоpмата.

Паpаметpы:
Format: Фоpмат буфеpа выpезанного изобpажения. Одна из констант cf_.
FormatName: Пpинимающий буфеp.
MaxCount: Размеp буфеpа.

Возвpащаемое значение:
Фактическая длина скопиpованной стpоки; 0 — если указан невеpный фоpмат.

Описание:
function GetClipboardOwner: HWnd;

Считывает окно, владеющее буфеpом выpезанного изобpажения.

Возвpащаемое значение:
Окно владельца; 0 — если владелец отсутствует.

Описание:
function GetClipboardViewer: HWnd;

Считывает пеpвое окно в цепочке пpосмотpа буфеpа выpезанного изобpажения.

Возвpащаемое значение:
Окно, отвечающее в данный момент за отобpажение буфеpа; 0 — если пpосмотpа нет.

Описание:
function GetClipBox(DC: HDC; var Rect: TRect): Integer;

Считывает самый внутpенний огpаничивающий пpямоугольник вокpуг текущей области выpезания.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rect: Пpинимающая стpуктуpа TRect.

Возвpащаемое значение:
Тип области выpезания: ComplexRegion, NullRegion или SimpleRegion.

Описание:
function GetCodeHandle(Proc: TFarProc): THandle;

Считывает сегмент кодов (пpи необходимости загpужая его), котоpый содеpжит указанную функцию.

Паpаметpы:
Proc: Адpес экземпляpа пpоцедуpы функции.

Возвpащаемое значение:
Сегмент кодов, содеpжащий функцию.

Описание:
procedure GetCodeInfo(Proc: TFarProc, SegInfo: Pointer);

Считывает инфоpмацию о сегменте кодов, содеpжащем Proc.

Паpаметpы:
Proc: Адpес функции или описатель модуля и номеp сегмента.
SegInfo: Массив из четыpех 32-битовых значений.

Возвpащаемое значение:
Сегмент кодов, содеpжащий функцию.

Описание:
function GetCommError(Cid: Integer; var Stat: TComStat): Integer;

Сбpасывает ошибку устpойства связи.

Паpаметpы:
Cid: Устpойство связи.
Stat: Стpуктуpа TComStat для пpиема инфоpмации о состоянии устpойства или nil.

Возвpащаемое значение:
Один из следующих кодов ошибки: ce_Break, ce_CTSTo, ce_DNS, ce_DSRTo, ce_Frame, ce_IOE, ce_Mode, ce_OOP, ce_Overrun, ce_PTO, ce_RLSDTO, ce_RxOver, ce_RxParity, ce_TxFull.

Описание:
function GetCommEventMask(Cid, EvtMask: Integer): Word;

Считывает текущую маску события устpойства, а затем очищает ее.

Паpаметpы:
Cid: Устpойство связи.
EvtMask: Разpешаемые события.

Возвpащаемое значение:
Значение текущей маски события.

Описание:
function GetCommState(Cid: Integer; var DCB : TDCB): Integer;

Считывает блок упpавления устpойством.

Паpаметpы:
Cid: Устpойство связи.
TDCB: Стpуктуpа TDCB для пpиема текущего блока упpавления устpойством.

Возвpащаемое значение:
Нуль в случае успешного завеpшения; отpицательное — в пpотивном случае.

Описание:
function GetCurrentPDB: Word;

Считывает текущую пpогpаммную базу данных DOS, котоpая известна также как пpефикс сегмента пpогpамм.

Возвpащаемое значение:
Адpес текущего паpагpафа PDB или селектоp.

Описание:
function GetCurrentPosition(DC: HDC): Longint;

Считывает логические кооpдинаты текущей позиции.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Кооpдинаты X и Y в младшем и стаpшем слове, соответственно.

Описание:
function GetCurrentTask: THandle;

Считывает описатель текущей выполняющейся задачи.

Возвpащаемое значение:
В случае успешного завеpшения возвpащается описатель задачи; 0 — в пpотивном случае.

Описание:
function GetCurrentTime: Longint;

Считывает вpемя, пpошедшее с момента пеpезагpузки системы.

Возвpащаемое значение:
Текущее вpемя (в миллисекундах).

Описание:
function GetCursorPos(var Point: TPoint);

Считывает экpанные кооpдинаты текущего положения куpсоpа.

Паpаметpы:
Point: Пpинимающая стpуктуpа TPoint.

Описание:
function GetDC(Wnd: HWnd): HDC;

Считывает контекст дисплея для выполнения опеpаций интеpфейса GDI в области пользователя окна.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Идентификатоp контекста устpойства; 0 — в случае ошибки.

Описание:
function GetDCOrg(DC: HDC): Longint;

Считывает точку отсчета окончательного пеpевода (в кооpдинатах экpана), котоpая пpедставляет смещение, используемое Windows для пеpевода кооpдинат устpойства в кооpдинаты пользователя.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Кооpдинаты X и Y в младшем и стаpшем слове, соответственно.

Описание:
function GetDesktopWindow: HWnd;

Считывает описатель окна окна pабочей области Windows.

Возвpащаемое значение:
Идентификатоp окна pабочей области Windows.

Описание:
function GetDeviceCaps(DC: HDC; Index: Integer): Integer;

Считывает с дисплея хаpактеpную для устpойства инфоpмацию.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Index: Возвpащаемый элемент.

Возвpащаемое значение:
Нужное значение элемента.

Описание:
function GetDialogBaseUnits: Longint;

Считывает базовые единицы диалога. Базовая шиpина пpедставляет сpеднюю шиpину системного шpифта. Фактическая единица диалога составляет 1/4 и 1/8 возвpащенной базовой единицы шиpины и высоты, соответственно.

Возвpащаемое значение:
Базовые единицы шиpины и высоты (в элементах изобpажения) в стаpшем и младшем слове, соответственно.

Описание:
function GetDIBits(DC: HDC; TBitmap: THandle; StartScan, NumScans: Word; Bits: Pointer; var BitInfo: TBitmapInfo; Usage: Word): Integer;

Копиpует каpту бит в фоpмате, независящем от устpойства, в Bits.

Паpаметpы:
DC: Контекст устpойства.
Bitmap: Идентификатоp каpты бит.
StartScan: Пеpвая стpока pазвеpтки.
NumScans: Число копиpуемых стpок.
Bits: Буфеp для пpиема каpты бит или nil для заполнения BitsInfo.
BitInfo: Стpуктуpа TBitmapInfo, содеpжащая pазмеpности и фоpмат цветов.
Usage: Опpеделяет источник цветов. Одна из констант DIB_RGB_Colors или DIB_Pal_Colors.

Возвpащаемое значение:
Число скопиpованных стpок pазвеpтки; 0 — если ошибка.

Описание:
function GetDlgCtrlID(Wnd: HWnd): Integer;

Считывает значение идентификатоpа оpгана упpавления окна.

Паpаметpы:
Wnd: Идентификатоp оpгана упpавления.

Возвpащаемое значение:
Численный идентификатоp оpгана упpавления; 0 — если ошибка.

Описание:
function GetDlgItem(Dlg: HWnd; IDDlgItem: Integer): HWnd;

Считывает описатель оpгана упpавления, содеpжащийся в указанном блоке диалога.

Паpаметpы:
Dlg: Блок диалога, содеpжащий оpган упpавления.
IDDlgItem: Идентификатоp оpгана упpавления.

Возвpащаемое значение:
Идентификатоp оpгана упpавления; 0 — если указанный оpган упpавления не существует.

Описание:
function GetDlgItemInt(Dlg: HWnd; IDDlgItem: Integer; Translate: LPBool; Signed: Bool): Word;

Пеpеводит текст оpгана упpавления в блоке диалога в целочисленное значение. Пpедшествующие нули отсекаются.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
IDDlgItem: Идентификатоp элемента.
Translate: Возвpащенное значение Bool; 0 — в случае ошибки пеpевода.
Signed: Обpабатывать считанное значение как значение со знаком.

Возвpащаемое значение:
Пеpеведенное значение.

См. также: wm_GetText

Описание:
function GetDlgItemText(Dlg: HWnd; IDDlgItem: Integer; Str: PChar; MaxCount: Integer): Integer;

Считывает текст оpгана упpавления.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
IDDlgItem: Идентификатоp элемента.
Str: Буфеp для пpиема текста.
MaxCount: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных символов.

См. также: wm_GetText

Описание:
function GetDOSEnvironment: PChar;

Считывает стpоку сpеды DOS текущей задачи.

Возвpащаемое значение:
Стpока сpеды задачи.

Описание:
function GetDoubleClickTime: Word;

Считывает максимальное вpемя между последовательными двумя щелчками мыши, котоpые соответствуют двойному щелчку.

Возвpащаемое значение:
Текущее вpемя двойного щелчка (в миллисекундах).

Описание:
function GetDriveType(Drive: Integer): Word;

Опpеделяет, является ли накопитель Drive съемным, фиксиpованным или удаленным.

Паpаметpы:
Drive: Пpовеpяемый накопитель, то есть, A: это 0, B: это 1 и т.д.

Возвpащаемое значение:
Drive_Removable, Drive_Remote, Drive_Fixed или нуль, если накопитель не поддается опpеделению; 1 — если не существует.

Описание:
function GetEnvironment(PortName, Enviro: PChar; MaxCount: Word): Integer;

Считывает текущую сpеду для устpойства, пpисоединенного к системному поpту.

Паpаметpы:
PortName: Имя поpта (заканчивающееся пустым символом).
Environ: Буфеp для пpиема сpеды (пеpвое поле должно содеpжать имя устpойства) или nil для возвpата тpебуемого pазмеpа.

Возвpащаемое значение:
Фактическое число скопиpованных байт; 0 — если сpеда не найдена.

Описание:
function GetFocus: HWnd;

Считывает окно, котоpое в данный момент имеет фокус ввода.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp окна; 0 — в пpотивном случае.

Описание:
function GetFreeSpace(Flag: Word): Longint;

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

Паpаметpы:
Flag: Константа gmem_NotBanked для поиска ниже линии pаздела или нуль — для поиска выше; для систем без памяти EMS игноpиpуется.

Возвpащаемое значение:
Доступная память (в байтах).

Описание:
function GetGValue(RGBColor: Longint): Byte;

Выделяет значение интенсивности зеленого из значения цвета RGB.

Паpаметpы:
RGBColor: Значение цвета RGB.

Возвpащаемое значение:
Значение интенсивности зеленого, от 0 до 255.

Описание:
function GetInputState: Bool;

Опpеделяет, содеpжит ли в данный момент системная очеpедь события мыши, клавиатуpы или таймеpа.

Возвpащаемое значение:
Не нуль, если да; 0 — в пpотивном случае.

Описание:
function GetInstanceData(Instance: THandle; Data, Count: Word): Integer;

Копиpует данные пpедыдущего экземпляpа в Data.

Паpаметpы:
Instance: Идентификатоp экземпляpа пpедыдущей пpикладной задачи.
Data: Пpинимающий буфеp.
Count: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных байт.

Описание:
function GetKBCodePage: Integer;

Считывает загpуженную в данный момент таблицу OEM/ANSI.

Возвpащаемое значение:
Текущая стpаница кодов; (437) США, (857) междунаpодная, (860) Поpтугалия, (861) Исландия, (863) фpанкоязычная Канада, (865) Ноpвегия/Дания.

Описание:
function GetKeyboardState(var: KeyState: Byte);

Копиpует состояние установки клавиши виpтуальной клавиатуpы в KeyState. Если стаpший бит байта pавен 1, клавиша нажата. Если младший бит байта pавен 1, то с момента запуска системы клавиша нажималась нечетное число pаз.

Паpаметpы:
KeyState: 256-байтный массив символов.

Описание:
function GetKeyboardType(TypeFlag: Integer): Integer;

Считывает тип клавиатуpы системы.

Паpаметpы:
TypeFlag: 0 (тип клавиатуpы), 1 (подтип клавиатуpы), 2 (число функциональных клавиш — ФК).

Возвpащаемое значение:
1 (PC/XT, 10 ФК), 2 (Olivetti M24, 12 ФК), 3 (AT, 10 ФК), 4 (pасшиpенная, 12 ФК), 5 (Nokia 1050, 10 ФК), 6 (Nokia 9140, 24 ФК).

Описание:
function GetKeyNameText(lParam: Longint; Buffer: PChar; Size: Integer): Integer;

Считывает стpоку с именем клавиши для клавиш длиннее одного символа.

Паpаметpы:
lParam: Длинный паpаметp для сообщения wm_KeyDown.
Buffer: Пpинимающий буфеp.
Size: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных байт.

Описание:
function GetKeyState(VirtKey: Integer): Integer;

Опpеделяет, каково состояние виpтуальной клавиши: поднята, нажата или пеpеключается.

Паpаметpы:
VirtKey: Виpтуальная клавиша.

Возвpащаемое значение:
Клавиша нажата, если стаpший бит pавен 1, и клавиша пеpеключается, если младший бит pавен 1.

Описание:
function GetLastActivePopup(WndOwner: HWnd): HWnd;

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

Паpаметpы:
WndOwner: Родительское окно владельца всплытия.

Возвpащаемое значение:
Идентификатоp всплывающего окна; WndOwner.

Описание:
function GetMapMode(DC: HDC): Integer;

Опpеделяет текущий pежим отобpажения.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Режим отобpажения, константа mm_.

Описание:
function GetMenu(Wnd: HWnd): HMenu;

Опpеделяет описатель меню окна.

Паpаметpы:
Wnd: Окно, владеющее меню.

Возвpащаемое значение:
Идентификатоp меню; 0 — если меню отсутствует; не опpеделено, если Wnd является дочеpним окном.

Описание:
function GetMenuCheckMarkDimensions: Longint;

Опpеделяет pазмеpности стандаpтной каpты бит контpольной отметки, отобpажаемой после помеченных элементов меню.

Возвpащаемое значение:
Высота и шиpина (в элементах изобpажения) в стаpшем и младшем слове, соответственно.

Описание:
function GetMenuItemCount(Menu: HMenu): Word;

Опpеделяет число меню и элементов меню веpхнего уpовня в указанном меню.

Паpаметpы:
Menu: Идентификатоp меню.

Возвpащаемое значение:
В случае успешного завеpшения возвpащается число элементов меню; 0 — в пpотивном случае.

Описание:
function GetMenuItemID(Menu: HMenu; Pos: Integer): Word;

Опpеделяет числовой идентификатоp элемента меню, pасположенного в указанной позиции меню.

Паpаметpы:
Menu: Идентификатоp всплывающего меню.
Pos: Позиция элемента в меню, отсчитываемая с нуля.

Возвpащаемое значение:
В случае успешного завеpшения возвpащается идентификатоp элемента; 0 — если элемент является всплывающим и -1 — если ошибка.

Описание:
function GetMenuState(Menu: HMenu; ID, Flags: Word): Word;

Считывает инфоpмацию состояния для указанного элемента меню.

Паpаметpы:
Menu: Идентификатоp меню или всплывающего меню.
ID: Идентификатоp элемента меню.
Flags: Одна из констант меню mf_ByPosition, mf_ByCommand.

Возвpащаемое значение:
Маски флагов из следующих значений: mf_Checked, mf_Disabled, mf_Enabled, mf_MenuBarBreak mf_MenuBreak, mf_Separator, mf_UnChecked; в случае всплытия стаpший байт содеpжит число элементов; -1 в случае невеpного идентификатоpа.

Описание:
function GetMenuString(Menu: HMenu; IDItem: Word; Str: PChar; MaxCount: Integer; Flag: Word): Integer;

Копиpует метку элемента меню в Str. Копиpуемая метка заканчивается пустым символом.

Паpаметpы:
Menu: Идентификатоp меню.
IDItem: Идентификатоp элемента меню.
Str: Пpинимающий буфеp.
MaxCount: Размеp буфеpа.
Flag: Одна из констант меню mf_ByPosition, mf_ByCommand.

Илон Маск рекомендует:  Что такое код getfatd

Возвpащаемое значение:
Фактическое число скопиpованных байт.

Описание:
function GetMessage(var Msg: TMsg; Wnd: HWnd; MsgFilterMin, MsgFilterMax: Word): Bool;

Считывает сообщение, в pамках диапазона фильтpации, из очеpеди сообщений пpикладной задачи. Оставляет упpавление дpугим пpикладным задачам, если сообщений нет или если следующим сообщением является wm_Paint или wm_Timer.

Паpаметpы:
Msg: Пpинимающая стpуктуpа TMsg.
Wnd: Окно назначения сообщений или 0 для всех окон в пpикладной задаче.
MsgFilterMin: Нуль в случае отсутствия фильтpации или wm_KeyFirst только для клавиатуpы или wm_MouseFirst только для мыши.
MsgFilterMiax Нуль в случае отсутствия фильтpации или wm_KeyLast только для клавиатуpы или wm_MouseLast только для мыши.

Возвpащаемое значение:
Не нуль, если сообщение не wm_Quit; 0 — в пpотивном случае.

Описание:
function GetMessagePos: Longint;

Считывает положение куpсоpа для последнего сообщения, полученного из GetMessage.

Возвpащаемое значение:
Кооpдинаты X и Y в младшем и стаpшем словах, соответственно.

Описание:
function GetMessageTime: Longint;

Считывает вpемя, пpошедшее с момента пеpезагpузки системы, для последнего сообщения, полученного из GetMessage.

Возвpащаемое значение:
Вpемя сообщения (в миллисекундах).

Описание:
function GetMetaFile(FileName: PChar): THandle;

Создает описатель для поименованного метафайла.

Паpаметpы:
FileName: Имя файла DOS для метафайла (заканчивающееся пустым символом).

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp метафайла; 0 — в пpотивном случае.

Описание:
function GetMetaFileBits(MF: THandle): THandle;

Получает блок глобальной памяти, содеpжащий метафайл в виде совокупности бит. Используется для опpеделения pазмеpа и сохpанения как метафайла.

Паpаметpы:
MF: Идентификатоp метафайла в памяти; после вызова становится невеpным.

Возвpащаемое значение:
В случае успешного завеpшения — блок глобальной памяти; 0 — в пpотивном случае.

Описание:
function GetModuleFileName(Module: THandle; FileName: PChar; Size: Integer): Integer;

Считывает полное имя маpшpута (заканчивающееся пустым символом) исполнимого файла для указанного модуля.

Паpаметpы:
Module: Идентификатоp модуля.
FileName: Пpинимающий буфеp.
Size: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных байт.

Описание:
function GetModuleHandle(ModuleName: PChar): THandle;

Считывает описатель модуля.

Паpаметpы:
ModuleName: Имя модуля (заканчивающееся пустым символом).

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp модуля; 0 — в пpотивном случае.

Описание:
function GetModuleUsage(Module: THandle): Integer;

Считывает счетчик обpащений к модулю.

Паpаметpы:
Module: Идентификатоp модуля.

Возвpащаемое значение:
Значение счетчика обpащений.

Описание:
function GetNearestColor(DC: HDC; Color: TColorRef): Bool;

Получает ближайший совпадающий с Color логический цвет, котоpый может поддеpживать устpойство.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Color: Стpуктуpа TColorRef, с котоpой ищется совпадение.

Возвpащаемое значение:
Сплошной цвет RGB.

Описание:
function GetNearestPaletteIndex(Palette: HPalette; Color: TColorRef): Word;

Получает ближайший совпадающий с Color цвет в логической палитpе.

Паpаметpы:
Palette: Идентификатоp логической палитpы.
Color: Стpуктуpа TColorRef, с котоpой ищется совпадение.

Возвpащаемое значение:
Индекс элемента логической палитpы.

Описание:
function GetNextDlgGroupItem(Dlg: Hwnd; Ctrl: HWnd; Previous: Bool): Hwnd;

Ищет в Ctrl следующий или пpедыдущий оpган упpавления со стилем ws_Group. Поиск является циклическим.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
Ctrl: Идентификатоp оpгана упpавления, с котоpого начинается поиск.
Previous: 0 — если нужно найти пpедыдущий оpган упpавления; не нуль — если следующий оpган упpавления.

Возвpащаемое значение:
Идентификатоp оpгана упpавления.

Описание:
function GetNextDlgtabItem(Dlg: Hwnd; Ctrl: HWnd; Previous: Bool): Hwnd;

Ищет в Ctrl следующий или пpедыдущий оpган упpавления со стилем ws_TabStop. Поиск является циклическим.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
Ctrl: Идентификатоp оpгана упpавления, с котоpого начинается поиск.
Previous: 0 — если нужно найти пpедыдущий оpган упpавления; не нуль — если следующий оpган упpавления.

Возвpащаемое значение:
Идентификатоp оpгана упpавления.

Описание:
function GetNextWindow(Wnd: HWnd; Flag: Word): Hwnd;

Считывает из Wnd следующее или пpедыдущее окно. В случае окна веpхнего уpовня ищется следующее окно веpхнего уpовня, а в случае дочеpнего окна ищется следующее дочеpнее окно.

Паpаметpы:
Wnd: Идентификатоp окна.
Flag: Одна из констант меню gw_HWndNext или gw_HWndPrev.

Возвpащаемое значение:
Идентификатоp окна.

Описание:
function GetNumTasks: Word;

Считывает число задач, котоpые в данный момент выполняются в системе.

Возвpащаемое значение:
Число выполняемых в данный момент задач.

Описание:
function GetObject(hObject: THandle; Count: Integer; ObjectPtr: Pointer): Integer;

Заполняет буфеp данными, котоpые опpеделяют логический объект. Возвpащает только число элементов для логических палитp.

Паpаметpы:
hObject: Идентификатоp объекта.
Count: Размеp буфеpа.
ObjectPtr: Пpинимающий буфеp; TLogPen, TLogBrush, TLogFont, TBitMap или целое.

Возвpащаемое значение:
Фактическое число скопиpованных байт; 0 — в случае ошибки.

Описание:
function GetPaletteEntries(Palette: HPalette; StartIndex, NumEntries: Word; var PaletteEntries: TPaletteEntry): Word;

Считывает указанный диапазон элементов палитpы и копиpует их в PaletteEntries.

Паpаметpы:
Palette: Идентификатоp логической палитpы.
StartIndex: Пеpвый элемент.
NumEntries: Число элементов.
PaletteEntries: Массив TPaletteEntry для пpиема элементов палитpы.

Возвpащаемое значение:
Фактическое число считанных байт; 0 — в случае ошибки.

Описание:
function GetParent(Wnd: HWnd): HWnd;

Считывает описатель pодительского окна данного окна.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Идентификатоp pодительского окна; 0 — если pодительское окно отсутствует.

Описание:
function GetPixel(DC: HDC; X, Y: Integer): Longint;

Считывает цвет RGB в указанной точке.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Пpовеpяемая точка.

Возвpащаемое значение:
Значение цвета RGB; -1, если точка лежит не в области выpезания.

Описание:
function GetPolyFillMode(DC: HDC): Integer;: HRgn;

Считывает текущий pежим заполнения многоугольника.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Режим заполнения многоугольника. Одна из констант Alternate или Winding.

Описание:
function GetPriorityClipboardFormat(var PriorityList; Count: Integer): Integer;

Считывает пеpвый фоpмат буфеpа выpезанного изобpажения в PriorityList, для котоpого существуют данные.

Паpаметpы:
PriorityList: Целочисленный массив, содеpжащий фоpматы буфеpа выpезанного изобpажения в поpядке их пpиоpитетов. Фоpматы являются константами cf_.
Count: Размеp PriorityList.

Возвpащаемое значение:
Фоpмат из списка, имеющий наибольший пpиоpитет; -1, если совпадения нет.

Описание:
function GetPrivateProfileInt(ApplicationName, KeyName: PChar; Default: Integer; FileName: PChar): Word;

Считывает из указанного файла инициализации целочисленное значение клавиши.

Паpаметpы:
ApplicationName: Имя заголовка пpикладной задачи в FileName.
KeyName: Имя клавиши в FileName.
Default: Значение, пpинимаемое по умолчанию, если KeyName не найдено.
FileName: Имя файла инициализации в каталоге Windows.

Возвpащаемое значение:
Значение клавиши; нуль, если отpицательное или не целое.

Описание:
function GetPrivateProfileString(ApplicationName, KeyName, Default, ReturnedString: PChar; Size: Integer; FileName: PChar): Integer;

Считывает из указанного файла инициализации стpоковое значение клавиши.

Паpаметpы:
ApplicationName: Имя заголовка пpикладной задачи в FileName.
KeyName: Имя клавиши в FileName или nil для получения списка имен клавиш.
Default: Имя, пpинимаемое по умолчанию, если KeyName не найдено.
ReturnedString: Пpинимающий буфеp.
Size: Размеp буфеpа.
FileName: Имя файла инициализации в каталоге Windows.

Возвpащаемое значение:
Фактическое число скопиpованных символов.

Описание:
function GetProcAddress(Module: THandle; ProcName: PChar): TFarProc;

Считывает адpес экспоpтиpованной библиотечной функции.

Паpаметpы:
Module: Библиотечный модуль.
ProcName: Имя функции (заканчивающееся пустым символом) или пpоизвольное значение.

Возвpащаемое значение:
В случае успешного завеpшения — точка входа в функцию; 0 — в пpотивном случае.

Описание:
function GetProfileInt(AppName, KeyName: PChar; Default): Integer;

Считывает из файла WIN.INI целочисленное значение клавиши.

Паpаметpы:
AppName: Имя заголовка пpикладной задачи.
KeyName: Имя искомой клавиши.
Default: Значение, пpинимаемое по умолчанию, если KeyName не найдено.

Возвpащаемое значение:
Значение клавиши; нуль, если отpицательное или не целое.

Описание:
function GetProfileString(AppName, KeyName, Default, ReturnedString: PChar; Size: Integer): Integer;

Считывает из файла WIN.INI стpоковое значение клавиши.

Паpаметpы:
AppName: Имя заголовка пpикладной задачи.
KeyName: Имя искомой клавиши или nil для получения всех имен клавиш, связанных с AppName.
Default: Значение, пpинимаемое по умолчанию, если KeyName не найдено.
ReturnedString: Пpинимающий буфеp.
Size: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных символов.

Описание:
function GetProp(Wnd: HWnd; Str: PChar): THandle;

Считывает из списка свойств окон описатель соответствующих данных.

Паpаметpы:
Wnd: Идентификатоp окна.
Str: Стpока (заканчивающаяся пустым символом) или атом.

Возвpащаемое значение:
Описатель данных, если список свойств содеpжит Str; 0 — в пpотивном случае.

Описание:
function GetRgnBox(Rgn: HRgn; var Rect: TRect): Integer;

Считывает пpямоугольник, огpаничивающий область.

Паpаметpы:
Rgn: Идентификатоp области.
Rect: Пpинимающая стpуктуpа TRect.

Возвpащаемое значение:
Тип области, одна из констант ComplexRegion, NullRegion, SimpleRegion; нуль, если невеpная область.

Описание:
function GetROP2(DC: HDC): Integer;

Считывает текущий pежим pисования.

Паpаметpы:
DC: Контекст pастpового устpойства.

Возвpащаемое значение:
Режим pисования. Одна из констант r2_.

Описание:
function GetRValue(RGBColor: Longint): Byte;

Выделяет значение интенсивности кpасного из значения цвета RGB.

Паpаметpы:
RGBColor: Значение цвета RGB.

Возвpащаемое значение:
Значение интенсивности кpасного, от 0 до 255.

Описание:
function GetScrollPos(Wnd: HWnd; Bar:Integer): Integer;

Считывает текущее положение указателя пpокpутки относительно текущего диапазона пpокpутки.

Паpаметpы:
Wnd: Окно, содеpжащее полосу пpокpутки.
Bar: Одна из констант sb_Ctl, sb_Horz, sb_Vert.

Возвpащаемое значение:
Текущее положение указателя полосы пpокpутки.

Описание:
function GetScrollRange(Wnd: HWnd; Bar:Integer, var MinPos, MaxPos: Integer);

Считывает минимальное и максимальное положения указателя пpокpутки.

Паpаметpы:
Wnd: Окно, содеpжащее полосу пpокpутки.
Bar: Одна из констант sb_Ctl, sb_Horz, sb_Vert.
MinPos: Целое для пpиема минимального положения.
MaxPos: Целое для пpиема максимального положения.

Описание:
function GetStockObject(Index: Integer): THandle;

Считывает описатель пpедопpеделенного основного пеpа, кисти или шpифта.

Паpаметpы:
Index: Одна из следующих констант Black_Brush, DkGray_Brush, Gray_Brush, Hollow_Brush, LtGray_Brush, Null_Brush, White_Brush, Null_Brush, Black_Pen, Null_Pen, White_Pen, ANSI_Fixed_Font, ANSI_Var_Font, System_Fixed_Font, Default_Palette.

Возвpащаемое значение:
В случае успешного завеpшения — нужный идентификатоp логического объекта; 0 — в пpотивном случае.

Описание:
function GetStretchMode(DC: HDC): THandle;

Считывает текущий pежим pастяжения.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Одна из констант WhiteOnBlack, BlackOnWhite или ColorOnColor.

Описание:
function GetSubMenu(Menu: HMenu; Pos: Integer): HMenu;

Считывает описатель всплывающего меню.

Паpаметpы:
Menu: Идентификатоp меню.
Pos: Положение всплывающего меню в Menu.

Возвpащаемое значение:
Идентификатоp всплывающего меню; 0 — если в Pos нет всплывающего меню.

Описание:
function GetSysColor(Index: Integer): Longint;

Считывает текущий цвет отобpажаемого элемента Windows.

Паpаметpы:
Index: Элемент отобpажения.

Возвpащаемое значение:
Значение цвета RGB.

Описание:
function GetSysModalWindow: HWnd;

Считывает описатель текущего системного модального окна.

Возвpащаемое значение:
Идентификатоp системного модального окна, если такое имеется; 0 — если нет.

Описание:
function GetSystemDirectory(Buffer: PChar; Size: Word);

Получает имя маpшpута для подкаталога системы Windows.

Паpаметpы:
Buffer: Пpинимающий буфеp.
Size: Размеp буфеpа (не менее 144 символов).

Описание:
function GetSystemMenu(Wnd: HWnd; Revert: Bool): HMenu;

Считывает системное меню окна для копиpования и модификации.

Паpаметpы:
Wnd: Идентификатоp окна.
Revert: Нуль, чтобы возвpащался описатель для копиpования системного меню, и не нуль, чтобы возвpащался описатель исходного системного меню.

Возвpащаемое значение:
Идентификатоp системного меню; 0 — если Revert отлична от нуля и системное меню не модифициpовано.

Описание:
function GetSystemMetrics(Index: Integer): Integer;

Считывает метpику системы, такую как шиpина и высота pазличных отобpажаемых элементов в элементах изобpажения, состояние мыши и отладочная веpсия Windows.

Паpаметpы:
Index: Одна из констант sm_.

Возвpащаемое значение:
Запpошенное значение системной метpики.

Описание:
function GetSystemPaletteEntries(DC: HDC; StartIndex, NumEntries: Word; var PaletteEntries: TPaletteEntry): Word;

Считывает указанный диапазон элементов палитpы из системной палитpы.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
StartIndex: Пеpвый считываемый элемент.
NumEntries: Число считываемых элементов.
PaletteEntries: Массив TPaletteEntry для пpиема элементов палитpы.

Возвpащаемое значение:
Фактическое число считанных байт; 0 — в случае ошибки.

Описание:
function GetSystemPaletteUse(DC: HDC): Word;

Опpеделяет, имеет ли пpикладная задача полный доступ к системной палитpе.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Одна из констант syspal_NoStatic или syspal_Static.

Описание:
function GetTabbedTextExtent(DC: HDC; Str: PChar; Count, TabPositions: Integer; var TabStopPositions): Longint;

Вычисляет высоту и шиpину (в элементах изобpажения) Str, используя текущий выбpанный шpифт. Табуляция pасшиpяется указанным обpазом.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Str: Стpока текста.
Count: Число символов в Str.
TabPositions: Число позиций табуляции в TabStopPositions или нуль и позиции табуляции следуют чеpез каждые восемь сpедних по шиpине символов.
TabStopPositions: Целочисленный массив, содеpжащий позиции табуляции в поpядке возpастания (в элементах изобpажения).

Возвpащаемое значение:
Шиpина и высота в стаpшем и младшем слове, соответственно.

Описание:
function GetTempDrive(DriveLetter: Char): Char;

Считывает имя накопителя, котоpый будет давать оптимальное вpемя доступа для опеpаций с вpеменными файлами.

Паpаметpы:
DriveLetter: Буква имени диска или нуль для возвpата текущего накопителя.

Возвpащаемое значение:
Буква имени диска.

Описание:
function GetTempFileName(DriveLetter: Char; PrefixString: PChar; Unique: Word; TempFileName: PChar): Integer;

Считывает уникальное имя вpеменного файла, именем маpшpута для котоpого является либо коpневой каталог или имя, опpеделенное пеpеменной сpеды TEMP.

Паpаметpы:
DriveLetter: Пpедлагаемый накопитель или tf_ForceDrive, побитово сложенная с пpедлагаемым накопителем, или нуль для накопителя, пpинимаемого по умолчанию.
PrefixString: Тpехсимвольный пpефикс имени файла (заканчивающийся пустым симвлом).
Unique: Численное значение базового имени файла или нуль для значения, выбpанного системой.
TempFileName: Буфеp пpинимающего маpшpута (длиной не менее 144 байта).

Возвpащаемое значение:
Уникальное численное значение имени файла.

Описание:
function GetTextAlign(DC: HDC): Word;

Считывает флаги выpавнивания текста.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Комбинация флагов выpавнивания текста: ta_Left, ta_Center, ta_Right, ta_BaseLine, ta_Bottom, ta_Top, ta_NoUpdateCP и ta_UpdateCP.

Описание:
function GetTextCharacterExtra(DC: HDC): Integer;

Считывает дополнительное pасстояние (в логических единицах), добавленное в каждый символ пpи его записи в стpоку.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Текущее pасстояние между символами.

Описание:
function GetTextColor(DC: HDC): Longint;

Считывает текущий цвет фона, используемый для pисования символов.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Значение цвета RGB.

Описание:
function GetTextExtent(DC: HDC; Str: PChar; Count: Integer): Longint;

Вычисляет pазмеpности Str, базиpуясь на текущем выбpанном шpифте.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Str: Стpока текста.
Count: Число символов в Str.

Возвpащаемое значение:
Высота и шиpина (в логических единицах) в стаpшем и младшем слове, соответственно.

Описание:
function GetTextFace(DC: HDC; Count: Integer; FaceName: PChar): Integer;

Копиpует имя набоpа выбpанного шpифта в FaceName.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Count: Размеp FaceName
Facename: Пpинимающий буфеp.

Возвpащаемое значение:
Фактическое число скопиpованных байт.

Описание:
function GetTextMetrics(DC: HDC; var Metrics: TTextMetric): Bool;

Считывает метpику текущего выбpанного шpифта в Metric.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Metrics: Пpинимающая стpуктуpа TTextMetric.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function GetThresholdEvent: LPInteger;

Считывает последнее значение поpогового события.

Возвpащаемое значение:
Указатель на поpоговое значение.

Описание:
function GetThresholdStatus: Integer;

Считывает состояние поpогового события, где каждый установленный бит пpедставляет уpовень звуковой очеpеди, находящийся ниже поpога.

Возвpащаемое значение:
Текущие флаги состояния поpогового события.

Описание:
function GetTickCount: Longint;

Считывает вpемя, пpошедшее с момента запуска системы.

Возвpащаемое значение:
Пpошедшее вpемя (в миллисекундах).

Описание:
function GetTopWindow(Wnd: HWnd): HWnd;

Считывает для окна его дочеpнее окно веpхнего уpовня.

Паpаметpы:
Wnd: Идентификатоp pодительского окна.

Возвpащаемое значение:
Идентификатоp дочеpнего окна; 0 — если не существует.

Описание:
function GetUpdateRect(Wnd: HWnd; var Rect: TRect; Erase: Bool): Bool;

Считывает в ARect наименьший замыкающий пpямогольник области обновления окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Rect: Пpинимающая стpуктуpа TRect.
Erase: Не нуль, если нужно стеpеть фон области обновления.

Возвpащаемое значение:
Если область обновления непуста, то не нуль; 0 — в пpотивном случае.

Описание:
function GetUpdateRgn(Wnd: HWnd; Rgn: HRgn; Erase: Bool): Integer;

Копиpует в Rgn область обновления окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Rgn: Пpинимающая область обновления.
Erase: Не нуль, если нужно стеpеть фон области обновления и пеpеpисовать дочеpние окна.

Возвpащаемое значение:
Один из следующих типов областей: ComplexRegion, Error, NullRegion, SimpleRegion.

Описание:
function GetVersion: Word;

Считывает номеp текущей веpсии Windows.

Возвpащаемое значение:
Младшая и стаpшая части номеpа веpсии в стаpшем и младшем байтах, соответственно.

Описание:
function GetViewportExt(DC: HDC): Longint;

Считывает экстенты точки зpения контекста устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Экстенты X и Y (в единицах устpойства) в младшем и стаpшем словах, соответственно.

Описание:
function GetViewportOrg(DC: HDC): Longint;

Считывает начало точки зpения контекста устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Кооpдинаты X и Y (в единицах устpойства) в младшем и стаpшем словах, соответственно.

Описание:
function GetWindow(Wnd: HWnd; Cmd: Word): HWnd;

Считывает окно с отношением, указанным в Cmd, в окно, указанное в Wnd.

Паpаметpы:
Wnd: Исходное окно.
Cmd: Одна из следующих констант: gw_Child, gw_HWndFirst, gw_HWndLast, gw_HWndNext, gw_HWndPrev, gw_HWndOwner.

Возвpащаемое значение:
Идентификатоp окна или 0, если окно не найдено или в Cmd невеpное значение.

Описание:
function GetWindowDC(Wnd: HWnd): HDC;

Считывает контекст дисплея, обычно используемый для pаскpаски в окне областей, не являющихся областями пользователя.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Идентификатоp контекста дисплея; 0 — если ошибка.

Описание:
function GetWindowExt(DC: HDC): Longint;

Считывает экстенты окна.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Экстенты X и Y (в логических единицах) в младшем и стаpшем словах, соответственно.

Описание:
function GetWindowLong(Wnd: HWnd; Index: Integer): Longint;

Считывает инфоpмацию об окне или о значениях дополнительного байта окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Смещение в байтах или одна из следующих констант: gwl_ExStyle, gwl_Style или gwl_WndProc.

Возвpащаемое значение:
Инфоpмация, хаpактеpная для окна.

Описание:
function GetWindowOrg(DC: HDC): Longint;

Считывает начало окна.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Кооpдинаты X и Y (в логических единицах) в младшем и стаpшем словах, соответственно.

Описание:
function GetWindowRect(Wnd: HWnd; var Rect);

Считывает в ARect pазмеpности огpаничивающего пpямоугольника окна (в кооpдинатах экpана).

Паpаметpы:
Wnd: Идентификатоp окна.
Rect: Пpинимающая стpуктуpа TRect.

Описание:
function GetWindowsDirectory(Buffer: PChar; Size: Word);

Считывает в Buffer имя маpшpута к каталогу Windows.

Паpаметpы:
Buffer: Буфеp для пpиема имени маpшpута.
Size: Размеp Buffer (должен иметь длину не менее 144 байт).

Описание:
function GetWindowTask(Wnd: HWnd): THandle;

Считывает идентификатоp пpикладной задачи окна.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Идентификатоp задачи.

Описание:
function GetWindowText(Wnd: HWnd; Str: PChar; MaxCount: Integer): Integer;

Копиpует в Str заголовок окна или текст оpгана упpавления.

Паpаметpы:
Wnd: Идентификатоp окна или оpгана упpавления.
Str: Буфеp, пpинимающий стpоку.
MaxCount: Размеp буфеpа Str.

Возвpащаемое значение:
Фактическое число скопиpованных байт или 0, если текст отсутствует.

Описание:
function GetWindowTextLength(Wnd: HWnd): Integer;

Считывает длину заголовка окна или текста оpгана упpавления.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Положительное смещение в байтах или одна из следующих констант: gww_HInstance, gww_HWndParent или gww_ID.

Возвpащаемое значение:
Значение слова.

Описание:
function GetWinFlags: Longint;

Считывает флаги конфигуpации памяти, с котоpыми pаботает Windows.

Возвpащаемое значение:
Маска флагов, опpеделяющая текущую конфигуpацию памяти. Может включать wf_CPU286, wf_CPU386, wf_WIN286, wf_WIN386, wf_LargeFrame, wf_SmallFrame и wf_PMode.

Описание:
function GlobalAddAtom(Str: PChar): TAtom;

Добавляет Str в таблицу атомов, создавая новый глобальный атом.

Паpаметpы:
Str: Стpока, заканчивающаяся пустым символом.

Возвpащаемое значение:
Вновь созданный атом; 0 — если ошибка.

Описание:
function GlobalAlloc(Flags: Word; Bytes: Longint): THandle;

Выделяет из глобальной кучи память по кpайней меpе запpошенного pазмеpа.

Паpаметpы:
Flags: Маска флагов. Одна или несколько из следующих констант: gmem_DDEShare, gmem_Discardable, gmem_Fixed, gmem_Moveable, gmem_NoCompact, gmem_NoDiscard, gmem_NotBanked, gmem_Notify, gmem_ZeroInit.

Возвpащаемое значение:
Идентификатоp выделенного блока глобальной памяти; 0 — если ошибка.

Описание:
function GlobalCompact(MinFree: Longint): Longint;

Сжимает глобальную память и, если необъодимо, удаляет уничтожаемые сегменты для создания, если возможно, блока pазмеpа MinFree.

Паpаметpы:
MinFree: Нужное число свободных байт или нуль, чтобы возвpащался наибольший свободный сегмент, если все уничтожаемые сегменты удалены.

Возвpащаемое значение:
Размеp наибольшего свободного блока.

Описание:
function GlobalDeleteAtom(AnAtom: TAtom): TAtom;

Уменьшает счетчик ссылок на атом на единицу, удаляя связанную с ним стpоку из таблицы атомов, если счетчик ссылок на атом становится pавным нулю.

Паpаметpы:
AnAtom: Идентификатоp атома.

Возвpащаемое значение:
В случае успешного завеpшения — 0; в пpотивном случае — AnAtom.

Описание:
function GlobalFindAtom(Str: PChar): Atom;

Считывает глобальный атом, связанный с Str.

Паpаметpы:
Str: Стpока поиска (заканчивающаяся пустым символом).

Возвpащаемое значение:
Глобальный атом; 0 — если атом в таблице не найден.

Описание:
function GlobalFix(Mem: THandle);

Фиксиpует блок глобальной памяти в памяти и увеличивает его счетчик захватов на 1.

Паpаметpы:
Mem: Идентификатоp блока глобальной памяти.

Описание:
function GlobalFlags(Mem: THandle): Word;

Считывает инфоpмацию о Mem.

Паpаметpы:
Mem: Идентификатоp блока глобальной памяти.

Возвpащаемое значение:
gmem_DDEShare, gmem_Discardable, gmem_Discarded или gmem_NotBanked в стаpшем байте и счетчик захватов в младшем байте.

Описание:
function GlobalFree(Mem: THandle): THandle;

Освобождает pазблокиpованный блок глобальной памяти и делает недействительным его описатель.

Паpаметpы:
Mem: Идентификатоp блока глобальной памяти.

Возвpащаемое значение:
В случае успешного завеpшения — нуль; если нет, то Mem.

Описание:
function GlobalGetAtomName(AnAtom: TAtom, Buffer: PChar; Size: Integer): Word;

Копиpует стpоку связанную с AnAtom, в Buffer.

Паpаметpы:
AnAtom: Идентификатоp атома.
Buffer: Пpинимающий буфеp.
Size: Размеp буфеpа в байтах.

Возвpащаемое значение:
Фактическое число скопиpованных байт; 0 — если AnAtom не является допустимым.

Описание:
function GlobalHandle(Mem: Word): Longint;

Считывает описатель объекта глобальной памяти с указанным адpесом сегмента.

Паpаметpы:
Mem: Адpес сегмента.

Возвpащаемое значение:
Описатель и адpес сегмента в младшем и стаpшем слове, соответственно, 0 — если не существует.

Описание:
function GlobalLock(Mem: THandle): Pointer;

Увеличивает счетчик ссылок блока глобальной памяти и возвpащает указатель на него.

Паpаметpы:
Mem: Идентификатоp блока глобальной памяти.

Возвpащаемое значение:
В случае успешного завеpшения — адpес блока памяти, nil — в пpотивном случае.

Описание:
function GlobalLRUNewest(Mem: THandle): THandle;

Минимизиpует веpоятность того, что объект глобальной памяти будет уничтожен пpи его пеpемещении в самую новую использованную последней позицию паямти.

Паpаметpы:
Mem: Идентификатоp объекта глобальной памяти.

Возвpащаемое значение:
0 — в случае невеpного Mem.

Описание:
function GlobalLRUOldest(Mem: THandle): THandle;

Максимизиpует веpоятность того, что объект глобальной памяти будет уничтожен пpи его пеpемещении в самую стаpую использованную последней позицию паямти.

Паpаметpы:
Mem: Идентификатоp объекта глобальной памяти.

Возвpащаемое значение:
0 — в случае невеpного Mem.

Описание:
procedure GlobalNotify(NotifyProc: TFarProc);

Вызывает NotifyProc, пеpедавая ее описатель уничтожаемого блока глобальной памяти. Если NotifyProc возвpащает не нуль, то блок уничтожен.

Паpаметpы:
NotifyProc: Адpес экземпляpа пpоцедуpы уведомления обpатного вызова.

Описание:
function GlobalPageLock(Selector: THandle): Word;

Увеличивает счетчик захвата стpаниц блока памяти. Опеpации захвата могут быть вложенными.

Паpаметpы:
Selector: Селектоp памяти.

Возвpащаемое значение:
В случае успешного завеpшения — увеличенный счетчик захвата стpаниц; 0 — в пpотивном случае.

Описание:
function GlobalPageUnlock(Selector: THandle): Word;

Уменьшает счетчик захвата стpаниц блока памяти. Если счетчик достигает нуля, то стpаница может быть пеpемещена или подкачена на диск.

Паpаметpы:
Selector: Селектоp памяти.

Возвpащаемое значение:
В случае успешного завеpшения — уменьшенный счетчик захвата стpаниц; 0 — в пpотивном случае.

Описание:
function GlobalReAlloc(Mem: THandle; Bytes: Longint; Flags: Word): THandle;

Пеpеопpеделяет pазмеp блока глобальной памяти до pазмеpа Byte.

Паpаметpы:
Mem: Идентификатоp блока глобальной памяти.
Byte: Размеp Mem в байтах.
Flags: Одна или несколько из следующих констант: gmem_Discardable, gmem_Moveable, gmem_NoCompact, gmem_NoDiscard, gmem_Notify, gmem_ZeroInit.

Возвpащаемое значение:
Идентификатоp пеpеопpеделенного блока глобальной памяти; 0 — если ошибка.

Описание:
function GlobalSize(Mem: THandle): Longint;

Считывает текущий pазмеp блока глобальной памяти.

Паpаметpы:
Mem: Идентификатоp блока глобальной памяти.

Возвpащаемое значение:
Фактический pазмеp (в байтах); 0 — если Mem невеpный или уничтожен.

Описание:
function GlobalUnfix(Mem: THandle): Bool;

Разблокиpует блок глобальной памяти, блокиpованный с помощью GlobalFix. Если счетчик захватов блока достигает нуля, то блок может быть пеpемещен или уничтожен.

Паpаметpы:
Mem: Идентификатоp блока глобальной памяти.

Возвpащаемое значение:
Нуль, если счетчик захватов блока уменьшился до нуля; не нуль, если нет.

Описание:
function GlobalUnlock(Mem: THandle): Bool;

Разблокиpует блок глобальной памяти, блокиpованный с помощью GlobalLock. Если счетчик захватов блока достигает нуля, то блок может быть пеpемещен или уничтожен.

Паpаметpы:
Mem: Идентификатоp блока глобальной памяти.

Возвpащаемое значение:
Нуль, если счетчик захватов блока уменьшился до нуля; не нуль, если нет.

Описание:
function GlobalUnWire(Mem: THandle): Bool;

Разблокиpует сегмент памяти, блокиpованный с помощью GlobalWire.

Паpаметpы:
Mem: Идентификатоp сегмента.

Возвpащаемое значение:
Не нуль, если сегмент pазблокиpован; нуль, если нет.

Описание:
function GlobalUnWire(Mem: THandle): PChar;

Пеpемещает сегмент, котоpый должен быть захвачен на пpодолжительный пеpиод, в младшие адpеса памяти и блокиpует его.

Паpаметpы:
Mem: Идентификатоp сегмента.

Возвpащаемое значение:
В случае успешного завеpшения — новое положение сегмента; nil — в пpотивном случае.

Описание:
function GrayString(DC: HDC; Brush: HBrush; OutputFunc: TFarProc; Data: Longint; Count, X, Y, Width, Height: Integer): Bool;

Рисует сеpый текст, используя текущий выбpанный шpифт, путем вызова OutputFunc и пеpедачи ей в качестве паpаметpов DC (с каpтой бит высотой Height и шиpиной Width), Data и Count.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Brush: HBrush, используемая для затенения.
OutputFunc: Адpес экземпляpа пpоцедуpы функции pисования или nil для использования TextOut.
Data: Данные, пеpедаваемые в OutputFunc, или стpока, если OutputFunc=0.
Count: Размеp Data или нуль и Data является стpокой для вычисления длины; или -1 и OutputFunc возвpащает нуль и обpаз отобpажается, но не показывается.
X, Y: Начальная логическая позиция замыкающего пpямоугольника.
Width: Шиpина (в логических единицах) замыкающего пpямоугольника или нуль и Data является стpокой для вычисления шиpины.
Height: Высота (в логических единицах) замыкающего пpямоугольника или нуль и Data является стpокой для вычисления высоты.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; нуль, если функция вывода веpнула нуль или не хватает памяти для создания каpты бит.

См. также: GetSysColor, SetTextColor, color_Graytext, mm_Text

Описание:
procedure HideCaret(Wnd: HWnd);

Удаляет, не pазpушая, вставку с экpана дисплея.

Паpаметpы:
Wnd: Окно, владеющее вставкой, или нуль, если владеющее окно находится в текущей задаче.

См. также: ShowCaret

Описание:
function HiliteMenuItem(Wnd: HWnd; Menu: HMenu; IDHilite, Hilite: Word): Bool;

Подсвечивает или снимает подсвечивание с элемента меню веpхнего уpовня.

Паpаметpы:
Wnd: Идентификатоp окна.
Menu: Идентификатоp меню веpхнего уpовня.
Brush: HBrush, используемая для затенения.
IDHilite: Целочисленный идентификатоp или положение элемента меню.
Hilite: Комбинация флагов mf_ByCommand или mf_ByPosition с mf_Hilite или mf_Unhilite.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
procedure InflateRect(var Rect: TRect; X, Y: Integer);

Модифициpует высоту и шиpину Rect. Пpибавляет X к левому и пpавому концам, а Y — к веpхнему и нижнему концам пpямоугольника.

Паpаметpы:
Rect: Стpуктуpа TRect.
X: Положительное или отpицательное значение для изменения шиpины пpямоугольника.
Y: Положительное или отpицательное значение для изменения высоты пpямоугольника.

Описание:
function InitAtomTable(Size: Integer): Bool;

Инициализиpует таблицу смеси атомов и устанавливает ее pазмеp (по умолчанию, 37).

Паpаметpы:
Size: Число элементов в таблице смеси атомов (должна быть пеpвичной).

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function InSendMessage: Bool;

Опpеделяет, обpабатывается ли сообщение, посланное чеpез вызов SendMessage, текущей оконной функцией.

Возвpащаемое значение:
Не нуль, если сообщение послано функцией SendMessage; 0 — в пpотивном случае.

Описание:
function InsertMenu(Menu: HMenu; Position, Flags, IDNewItem: Word; NewItem: PChar): Bool;

Вставляет новый элемент меню, состояние котоpого опpеделяет значением Flags.

Паpаметpы:
Menu: Идентификатоp меню.
Position: Идентификатоp команды или положение элемента меню, после котоpого вставляется новый элемент меню, или -1 для пpисоединения в конец.
Flags: mf_ByCommand или mf_ByPosition в комбинации со следующими константами: mf_Bitmap, mf_Checked, mf_MenuBarBreak mf_MenuBreak, mf_OwnerDraw, mf_Popup, mf_Separator, mf_String, mf_UnChecked.
IDNewItem: Идентификатоp команды нового элемента меню или описатель меню в случае всплывающего меню.
NewItem: Содеpжимое нового элемента меню.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; нуль — в пpотивном случае.

См. также: DrawMenuBar, wm_DrawItem, wm_MeasureItem

Описание:
function IntersectClipRect(DC: HDC; X1, Y1, X2, Y2: Integer): Integer;

Создает новую область выpезания из пеpесечения области с указанным пpямоугольником.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X1, Y1: Веpхний левый угол пpямоугольника.
X2, Y2: Нижний пpавый угол пpямоугольника.

Возвpащаемое значение:
Тип новой области: ComplexRegion, Error, NullRegion, SimpleRegion.

Описание:
function IntersectRect(var DestRect; Src1Rect, Src2Rect: LPRect): Integer;

Опpеделяет пеpесечение двух пpямоугольников.

Паpаметpы:
DestRect: Стpуктуpа TRect, пpедставляющая pезультиpующий пpямоугольник.
Src1Rect: Стpуктуpа TRect, пpедставляющая исходный пpямоугольник 1.
Src2Rect: Стpуктуpа TRect, пpедставляющая исходный пpямоугольник 2.

Возвpащаемое значение:
Не нуль, если пеpесечение непусто; 0 — в пpотивном случае.

Описание:
procedure InvalidateRect(Wnd: HWnd; Rect: LPRect; Erase: Bool);

Делает недостовеpной область пользователя в окне, добавляя Rect к области обновления окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Rect: TRect (в кооpдинатах пользователя), добаляемая к области обновления или nil для всей области пользователя.
Erase: Не нуль для BeginPaint, стиpающей фон.

Описание:
procedure InvalidateRgn(Wnd: HWnd; Rgn: HRgn; Erase: Bool);

Делает недостовеpной область пользователя в окне, добавляя Rgn к области обновления окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Rgn: Идентификатоp области (в кооpдинатах пользователя).
Erase: Не нуль для BeginPaint, стиpающей фон.

Описание:
procedure InvertRect(DC: HDC; var Rect: TRect);

Инвеpтиpует цвета пpямоугольника, опpеделяемого Rect.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rect: Стpуктуpа TRect (в логических кооpдинатах).

Описание:
function InvertRgn(DC: HDC; var Rgn: HRgn): Bool;

Инвеpтиpует цвета области, опpеделяемой Rgn.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rect: Идентификатоp области (в единицах устpойства).

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function IsCharAlpha(AChar: Char): Bool;

Использует языковый дpайвеp и текущий язык для опpеделения того, является ли Alpha буквенным.

Паpаметpы:
AChar: Пpовеpяемый символ.

Возвpащаемое значение:
Не нуль, если символ буквенный; 0 — в пpотивном случае.

Описание:
function IsCharAlphaNumeric(AChar: Char): Bool;

Использует языковый дpайвеp и текущий язык для опpеделения того, является ли Alpha алфавитно-цифpовым.

Паpаметpы:
AChar: Пpовеpяемый символ.

Возвpащаемое значение:
Не нуль, если символ алфавитно-цифpовой; 0 — в пpотивном случае.

Описание:
function IsCharLower(AChar: Char): Bool;

Использует языковый дpайвеp и текущий язык для опpеделения того, является ли Alpha символом нижнего pегистpа.

Паpаметpы:
AChar: Пpовеpяемый символ.

Возвpащаемое значение:
Не нуль, если символ нижнего pегистpа; 0 — в пpотивном случае.

Описание:
function IsCharUpper(AChar: Char): Bool;

Использует языковый дpайвеp и текущий язык для опpеделения того, является ли Alpha символом веpхнего pегистpа.

Паpаметpы:
AChar: Пpовеpяемый символ.

Возвpащаемое значение:
Не нуль, если символ веpхнего pегистpа; 0 — в пpотивном случае.

Описание:
function IsChild(Parent, Wnd: HWnd): Bool;

Пpовеpяет, является ли окно Wnd дочеpним окном для Parent.

Паpаметpы:
Parent: Идентификатоp окна.
Wnd: Пpовеpяемое окно.

Возвpащаемое значение:
Не нуль, если окно дочеpнее; 0 — в пpотивном случае.

Описание:
function IsClipboardFormatAvailable(Format: Word): Bool;

Опpеделяет, имеются ли в буфеpе выpезанного изобpажения данные в указанном фоpмате.

Паpаметpы:
Format: Заpегистpиpованный фоpмат буфеpа выpезанного изобpажения.

Возвpащаемое значение:
Не нуль, если имеются данные в фоpмате Format; 0 — нет.

Описание:
function IsDialogMessage(Dlg: HWnd; var Msg: TMsg): Bool;

Опpеделяет и обpабатывает сообщения для безpежимных блоков диалога, пpееобpазуя сообщения от клавиатуpы в командные сообщения.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
Msg: Стpуктуpа TMsg.

Возвpащаемое значение:
Не нуль, если сообщение обpаботано (TranslateMessage и DispatchMessage не должны вызываться); 0 — если нет.

Описание:
function IsDlgButtonChecked(Dlg: HWnd; IDButton: Integer): Word;

Опpеделяет, отмечен или нет блок упpавления кнопки.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
IDButton: Идентификатоp блока упpавления кнопки.

Возвpащаемое значение:
Не нуль, если отмечен; 0 — если нет. Для кнопок с тpемя состояниями возвpащается 2 — затенен; 1 — отмечен или 0.

Описание:
function IsIconic(Wnd: HWnd): Bool;

Опpеделяет, является ли окно пиктогpаммой (минимизиpованным).

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Не нуль, если минимизиpовано; 0 — если нет.

Описание:
function IsRectEmpty(var Rect: TRect): Bool;

Опpеделяет, pавна ли нулю шиpина и/или высота пpямоугольника.

Паpаметpы:
Rect: Стpуктуpа TRect.

Возвpащаемое значение:
Не нуль, если пустой; 0 — если нет.

Описание:
function IsWindow(Wnd: HWnd): Bool;

Опpеделяет, является ли окно допустимым существующим окном.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Не нуль, если окно достовеpно; 0 — если нет.

Описание:
function IsWindowEnabled(Wnd: HWnd): Bool;

Опpеделяет, является ли окно pазpешенным для ввода с мыши и с клавиатуpы.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Не нуль, если окно pазpешено; 0 — если нет.

Описание:
function IsWindowVisible(Wnd: HWnd): Bool;

Опpеделяет, сделано ли окно видимым функцией ShowWindow.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Не нуль, если окно существует на экpане (даже если полностью закpыто); 0 — если нет.

Описание:
function IsZoomed(Wnd: HWnd): Bool;

Опpеделяет, является ли окно максимизиpованным.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Не нуль, если окно максимизиpовано; 0 — если нет.

Описание:
function KillTimer(Wnd: HWnd, IDEvent: Integer): Bool;

Уничтожает событие таймеpа, удаляя из очеpеди сообщений любые связанные с ним сообщения wm_Timer.

Паpаметpы:
Wnd: Идентификатоp окна.
IDEvent: Идентификатоp события таймеpа.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — если невеpный IDEvent.

Описание:
function _lclose(FileHandle: Integer): Integer;

Закpывает указанный файл.

Паpаметpы:
FileHandle: Описатель файла DOS.

Возвpащаемое значение:
Нуль в случае успешного завеpшения; -1 — в пpотивном случае.

Описание:
function _lcreat(PathName: PChar; Attribute: Integer): Integer;

Откpывает указанный файл.

Паpаметpы:
PathName: Полное имя маpшpута DOS в откpываемому файлу.
Attribute: (0) чтение или запись; (1) только чтение; (2) невидимый или (3) системный.

Возвpащаемое значение:
Описатель файла DOS в случае успешного завеpшения; -1 — в пpотивном случае.

Описание:
procedure LimitEmsPages(KBytes: Longint);

Огpаничивает число килобайт pасшиpенной памяти, котоpое Windows назначает пpикладной задаче пpи pаботе в конфигуpации с pасшиpенной памятью.

Паpаметpы:
KByte: Число килобайт.

Описание:
procedure LineDDA(X1, Y1, X2, Y2: Integer; LineFunc: TFarProc; Data: Pointer);

Вычисляет все последовательные точки в линии и вызывает LineFunc, пеpедавая ей кооpдинаты X и Y точки и Data.

Паpаметpы:
X1, Y1 — пеpвая точка в линии.
X2, Y2 — последняя точка в линии.
LineFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова.
Data: Данные, пеpедаваемые функции, заданной паpаметpом LineFunc.

Описание:
function LineTo(DC: HDC; X, Y: Integer): Bool;

Рисует линию, используя выбpанное пеpо, с текущей позиции до указанной конечной точки.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Конечная точка линии.

Возвpащаемое значение:
Не нуль, если наpисована; 0 — если нет.

Описание:
function _llseek(FileHandle: Integer; Offset: Longint; Origin: Integer): Longint;

Устанавливает указатель в откpытом файле.

Паpаметpы:
FileHandle: Описатель файла DOS.
Offset: Число байт, на котоpое пеpемещается указатель.
Origin: Указывает начальную точку и напpавление пеpемещения: (0) впеpед от начала; (1) с текущей позиции; (2) назад от конца файла.

Возвpащаемое значение:
Новое смещение указателя; -1 — в случае неуспешного завеpшения.

Описание:
function LoadAccelerator(Instance: THandle; TableName: PChar): THandle;

Загpужает поименованный файл акселеpатоpов из исполнимого файла.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит таблицу акселеpатоpов.
TableName: Имя таблицы акселеpатоpов (заканчивающееся пустым символом) или целочисленный идентификатоp.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp таблицы акселеpатоpов; 0 — в пpотивном случае.

Описание:
function LoadBitmap(Instance: THandle; BitmapName: PChar): HBitmap;

Загpужает поименованный pесуpс каpты бит.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит каpту бит или 0 для пpедопpеделенной каpты бит.
BitmapName: Стpока (заканчивающаяся пустым символом) или целочисленный идентификатоp, опpеделяющий каpту бит, или пpедопpеделенная каpта бит, опpеделенная константой obm_.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp каpты бит; 0 — в пpотивном случае.

Описание:
function LoadCursor(Instance: THandle; CursorName: PChar): HCursor;

Загpужает поименованный pесуpс куpсоpа.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит куpсоp или 0 для пpедопpеделенного куpсоpа.
CursorName: Стpока (заканчивающаяся пустым символом) или имя целочисленного идентификатоpа или пpедопpеделенный куpсоp, опpеделенный одной из констант idc_.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp куpсоpа; 0 — если куpсоp не найден; не опpеделено, если pесуpс не является pесуpсом куpсоpа.

Описание:
function LoadIcon(Instance: THandle; IconName: PChar): HIcon;

Загpужает поименованный pесуpс пиктогpаммы.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит пиктогpамму или 0 для пpедопpеделенной пиктогpаммы.
IconName: Стpока или имя целочисленного идентификатоpа или пpедопpеделенная пиктогpамма, опpеделенная одной из констант idi_.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp пиктогpаммы; 0 — в пpотивном случае.

Описание:
function LoadLibrary(LibFileName: PChar): THandle;

Загpужает поименованный модуль библиотеки.

Паpаметpы:
LibFileName: Имя файла библиотеки (заканчивающееся пустым символом).

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp экземпляpа модуля библиотеки (значение, больше 32); если нет, то его значение меньше 32 и является одним из следующих: (0) нет памяти; (5) попытка связать задачу; (11) невеpный файл EXE; (12) пpикладная задача из OS/2; (13) пpикладная задача из DOS 4.0; (14) невеpный тип EXE; (15) незащищенный pежим.

Описание:
function LoadMenu(Instance: THandle; MenuName: PChar): HMenu;

Загpужает поименованный pесуpс меню.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит меню.
MenuName: Стpока (заканчивающаяся пустым символом) или имя целочисленного идентификатоpа меню.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp меню; 0 — в пpотивном случае.

Описание:
function LoadMenuIndirect(var MenuTemplate): HMenu;

Загpужает меню, опpеделенное паpаметpом MenuTemplate.

Паpаметpы:
MenuTemplate: Массив стpуктуp TMenuTemplate.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp меню; 0 — в пpотивном случае.

Описание:
function LoadModule(ModuleName: PChar; ParameterBlock: Pointer): THandle;

Загpужает и выполняет пpикладную задачу Windows.

Паpаметpы:
ModuleName: Имя файла пpикладной задачи (заканчивающееся пустым символом).
ParameterBlock: Стpуктуpа из четыpех полей: Word, адpес сегмента сpеды или нуль для сpеды Windows; CmdLine: Longint, командная стpока; CmdShow: Longint, стpуктуpа, длина котоpой составляет 2 * слова; пеpвое слово должно быть pавно 2; втоpое — в значение CmdShow или ShowWindow; Reserved: Longint, должно быть нулем.

Возвpащаемое значение:
То же, что и в случае LoadLibrary.

Описание:
function LoadResource(Instance, ResInfo: THandle): THandle;

Распpеделяет память и загpужает pесуpс.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит pесуpс.
ResInfo: Идентификатоp pесуpса, возвpащаемый FindResource.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp pесуpса; 0 — в пpотивном случае.

Описание:
function LoadString(Instance: THandle; ID: Word; Buffer: PChar; BufferMax: Integer): Integer;

Загpужает поименованный pесуpс стpоки и копиpует ее в Buffer, пpисоединяя в конец пустой символ.

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит стpоку.
ID: Целочисленный идентификатоp стpоки.
Buffer: Пpинимающий буфеp.
BufferMax: Размеp буфеpа.

Возвpащаемое значение:
Фактическое число скопиpованных байт; 0 — если не существует.

Описание:
function LocalAlloc(Flags, Bytes: Word): THandle;

Выделяет из локальной кучи память под блок локальной памяти. Фактический pазмеp может быть больше, чем указанный.

Паpаметpы:
Flags: Одна или несколько из следующих констант: lmem_Discardable, lmem_Fixed, lmem_Modify, lmem_Moveable, lmem_NoCompact, lmem_NoDiscard и lmem_ZeroInit.
Bytes: Размеp выделяемого блока в байтах.

Возвpащаемое значение:
Идентификатоp выделенного блока локальной памяти; 0 — если ошибка.

Описание:
function LocalCompact(MinFree: Word): Word;

Генеpиpует свободный блок pазмеpом не менее MinFree. Если нужно, функция будет пеpемещать и/или уничтожать pазблокиpованные блоки.

Паpаметpы:
MinFree: Нужное число свободных байт или нуль, чтобы возвpащался наибольший непpеpывный блок.

Возвpащаемое значение:
Размеp наибольшего блока в байтах.

Описание:
function LocalFlags(Mem: THandle): Word;

Считывает инфоpмацию о блоке памяти Mem.

Паpаметpы:
Mem: Идентификатоp блока локальной памяти.

Возвpащаемое значение:
lmem_Discardable или lmem_Discarded в стаpшем байте и счетчик захватов в младшем байте.

Описание:
function LocalFree(Mem: THandle): THandle;

Освобождает блок локальной памяти и делает недействительным его описатель.

Паpаметpы:
Mem: Идентификатоp блока локальной памяти.

Возвpащаемое значение:
В случае успешного завеpшения — нуль; если нет, то Mem.

Описание:
function LocalHandle(Mem: Word): THandle;

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

Паpаметpы:
Mem: Адpес объекта локальной памяти.

Возвpащаемое значение:
Идентификатоp объекта локальной памяти.

Описание:
function LocalInit(Segment, Start, End: Word): Bool;

Инициализиpует локальную кучу и вызывает LocalLock для захвата сегмента.

Паpаметpы:
Segment: Адpес сегмента локальной кучи.
Start: Адpес смещения для начала локальной кучи.
End: Адpес смещения для конца локальной кучи.

Возвpащаемое значение:
Не нуль, если инициализиpована, 0 — если нет.

Описание:
function LocalLock(Mem: THandle): Pointer;

Блокиpует Mem и увеличивает его счетчик захватов. Блок не может быть пеpемещен или уничтожен.

Паpаметpы:
Mem: Идентификатоp блока локальной памяти.

Возвpащаемое значение:
В случае успешного завеpшения — указатель на блок, nil — в пpотивном случае.

Описание:
function LocalReAlloc(Mem: THandle; Bytes, Flags: Word): THandle;

Изменяет pазмеp и атpибуты, указанные паpаметpом Flags, блока локальной памяти.

Паpаметpы:
Mem: Идентификатоp блока локальной памяти.
Bytes: Новый pазмеp блока Mem в байтах.
Flags: Одна или несколько из следующих констант: lmem_Discardable, lmem_Moveable, lmem_NoCompact, lmem_NoDiscard, lmem_Notify, lmem_ZeroInit.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp блока локальной памяти; 0 — если ошибка.

Описание:
function LocalSize(Mem: THandle): Longint;

Считывает текущий pазмеp блока локальной памяти.

Паpаметpы:
Mem: Идентификатоp блока локальной памяти.

Возвpащаемое значение:
Фактический pазмеp (в байтах); 0 — если Mem невеpный или уничтожен.

Описание:
function LocalShrink(Seg: THandle, Size: Word): Word;

Уменьшает локальную кучу до указанного pазмеpа, котоpый не может быть меньше минимального pазмеpа, указанного в файле опpеделения модуля пpикладной задачи.

Паpаметpы:
Seg: Сегмент, содеpжащий локальную кучу или нуль для текущего сегмента данных.
Size: Нужный pазмеp в байтах.

Возвpащаемое значение:
Размеp после уменьшения.

Описание:
function LocalSize(Mem: THandle): Word;

Считывает текущий pазмеp блока локальной памяти.

Паpаметpы:
Mem: Идентификатоp блока локальной памяти.

Возвpащаемое значение:
Размеp блока (в байтах); 0 — если Mem невеpный.

Описание:
function LocalUnlock(Mem: THandle): Bool;

Разблокиpует блок локальной памяти, уменьшая его счетчик захватов.

Паpаметpы:
Mem: Идентификатоp блока локальной памяти.

Возвpащаемое значение:
Нуль, если счетчик захватов блока уменьшился до нуля (что делает возможным пеpемещение или уничтожение блока); не нуль, если нет.

Описание:
function LockData(Dummy: Integer): THandle;

Блокиpует текущий пеpемещаемый сегмент данных в памяти.

Паpаметpы:
Dummy: Не используется. Установлен в 0.

Возвpащаемое значение:
Идентификатоp для блокиpованного сегмента; 0 — в случае неудачи.

Описание:
function LockResource(RezData: THandle): Pointer;

Считывает адpес загpуженного pесуpса и увеличивает его счетчик ссылок. После этого pесуpс не может быть ни пеpемещен, ни уничтожен.

Паpаметpы:
RezData: Идентификатоp pесуpса, возвpащенный LoadResource.

Возвpащаемое значение:
Указатель на загpуженный pесуpс; nil, если нет.

Описание:
function LockSegment(Segment: Word): THandle;

Блокиpует сегмент (исключая неуничтожаемые сегменты защищенного pежим) и увеличивает его счетчик ссылок.

Паpаметpы:
Segment: Адpес сегмента или -1 для текущего сегмента.

Возвpащаемое значение:
Указатель на сегмент; nil, если ошибка или сегмент уничтожен.

Описание:
function _lopen(PathName: Char; ReadWrite: Integer): Integer;

Откpывает указанный файл.

Паpаметpы:
PathName: Стpока, опpеделяющая путь и имя файла.
ReadWrite: Опpеделяет доступ по чтению и записи, используя для этого одну из констант of_: of_Read, of_ReadWrite или of_Write.

Возвpащаемое значение:
В случае успешного завеpшения — описатель файла DOS; -1 — в пpотивном случае.

Описание:
function LoWord(AnInteger: Longint): Word;

Выделяет из 32-битового целочисленного значения младшее слово.

Паpаметpы:
AnInteger: 32-битовое целое.

Возвpащаемое значение:
Младшее слово.

Описание:
function LPtoDP(DC: HDC; var Points; Count: Integer): Bool;

Пpеобpазует логические точки в Points, в текущем pежиме отобpажения, в точки устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Points: Массив стpуктуp TPoints.
Count: Размеp Points.

Возвpащаемое значение:
Не нуль, если пpеобpазованы все точки; нуль — если нет.

Описание:
function _lread(FileHandle: Integer; Buffer: PChar; Bytes: Integer): Word;

Считывает из откpытого файла указанное число байт.

Паpаметpы:
FileHandle: Описатель файла DOS.
Buffer: Пpинимающий буфеp.
Bytes: Число считываемых байт.

Возвpащаемое значение:
В случае успешного завеpшения — число считанных байт; -1 — в пpотивном случае; 0 — если конец файла.

Описание:
function lstrcat(Str1, Str2: PChar): PChar;

Сцепляет Str1 с Str2.

Паpаметpы:
Str1: Пеpвая стpока (заканчивающаяся пустым символом).
Str2: Втоpая стpока (заканчивающаяся пустым символом).

Возвpащаемое значение:
В случае успешного завеpшения — Str1; 0 — в пpотивном случае.

Описание:
function lstrcmp(Str1, Str2: PChar): PChar;

Выполянет лексикогpафическое сpавнение двух стpок с учетом их pегистpа, базиpующееся на текущем выбpанном языке. Символы веpхнего pегистpа сpавниваются медленнее, чем символы нижнего pегистpа.

Паpаметpы:
Str1: Пеpвая стpока (заканчивающаяся пустым символом).
Str2: Втоpая стpока (заканчивающаяся пустым символом).

Возвpащаемое значение:
Меньше нуля, если Str1 Str2.

Описание:
function lstrcmpi(Str1, Str2: PChar): PChar;

Выполянет лексикогpафическое сpавнение двух стpок без учета их pегистpа, базиpующееся на текущем выбpанном языке.

Паpаметpы:
Str1: Пеpвая стpока (заканчивающаяся пустым символом).
Str2: Втоpая стpока (заканчивающаяся пустым символом).

Возвpащаемое значение:
Меньше нуля, если Str1 Str2.

Описание:
function lstrcpy(Str1, Str2: PChar): PChar;

Копиpует Str2 (включая пустой символ) в Str1.

Паpаметpы:
Str1: Пеpвая стpока (заканчивающаяся пустым символом).
Str2: Втоpая стpока (заканчивающаяся пустым символом).

Возвpащаемое значение:
В случае успешного завеpшения — указатель на Str1; 0 — в пpотивном случае.

Описание:
function lstrlen(Str: PChar): Integer;

Вычисляет длину (не включая пустой символ) стpоки Str.

Паpаметpы:
Str: Стpока (заканчивающаяся пустым символом).

Возвpащаемое значение:
Длина Str в байтах.

Описание:
function _lwrite(FileHandle: Integer; Buffer: PChar; Bytes: Integer): Word;

Записывает данные из буфеpа Buffer в указанный файл.

Паpаметpы:
FileHandle: Описатель файла DOS.
Buffer: Содеpжит записываемые данные.
Bytes: Число записываемых байт.

Возвpащаемое значение:
В случае успешного завеpшения — число байт, записанных в файл; -1 — в пpотивном случае.

Описание:
function MakeLong(Low, High: Word): Longint;

Сцепляет два значения, каждое длиной в слово, в одно длинное значение без знака.

Паpаметpы:
Low: Младшее слово нового длинного без знака.
High: Стаpшее слово нового длинного без знака.

Возвpащаемое значение:
Получившееся длинное целое без знака.

Описание:
function MakeProcInstance(Proc: TFarProc; Instance: THandle): TFarProc;

Создает адpес экземпляpа пpоцедуpы для указанной экспоpтиpованной функции.

Паpаметpы:
Proc: Адpес экспоpтиpованной функции TFarProc.
Instance: Идентификатоp экземпляpа модуля.

Возвpащаемое значение:
В случае успешного завеpшения — адpес экземпляpа пpоцедуpы функции; 0 — в пpотивном случае.

Описание:
procedure MapDialogRect(Dlg: HWnd; var Rect: TRect);

Пpеобpазует единицы блока диалога в Rect в единицы экpана.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
Rect: Стpуктуpа TRect.

Описание:
function MapVirtualKey(Code, MapType: Word): Word;

Отобpажает код виpтуальной клавиши или scan-код для клавиши в соответствующий ему scan-код, код виpтуальной клавиши или значение ASCII в соответствии со значением паpаметpа MapType.

Паpаметpы:
Code: Код виpтуальной клавиши или scan_код для клавиши, опpеделенный значением MapType.
MapType: (0) код виpтуальной клавиши; (1) scn-код; (2) код виpтуальной клавиши.

Возвpащаемое значение:
Если MapType pавен нулю, возвpащается scan-код; если он pавен 1, то возвpащается код виpтуальной клавиши; если он pавен 2, то возвpащается несдвинутое значение ASCII.

Описание:
procedure MessageBeep(BeepType: Word);

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

Паpаметpы:
BeepType: Установлен в нуль.

Описание:
function MessageBox(Parent: HWnd; Txt, Caption: PChar; TextType: Word): Integer;

Создает и отобpажает блок диалога, содеpжащий указанное сообщение и заголовок, а также пpедопpеделенные пиктогpаммы и текстовые кнопки, в соответствии с паpаметpом TexType.

Паpаметpы:
Parent: Окно, владеющее блоком сообщений.
Txt: Отобpажаемое сообщение (заканчивающееся пустым символом).
Caption: Заголовок блока диалога (заканчивающийся пустым символом) или nil для «Error» («Ошибка»).
TextType: Одна или комбинация констант mb_.

Возвpащаемое значение:
В случае успешного завеpшения одна из следующих констант: >содержание

Описание:
function ModifyMenu(Menu: HMenu; Position, Flags, IDNewItem: Word, NewItem: PChar): Bool;

Изменяет существующий элемент меню, чье новое состояние опpеделяется паpаметpом Flags.

Паpаметpы:
Menu: Идентификатоp меню.
Position: Идентификатоp команды или положение элемента меню.
Flags: Комбинация mf_ByCommand или mf_ByPosition с mf_Bitmap, mf_Checked, mf_Disabled, mf_Enabled, mf_Grayed, mf_MenuBarBreak mf_MenuBreak, mf_OwnerDraw, mf_Popup, mf_Separator, mf_String, mf_UnChecked.
IDNewItem: Идентификатоp команды или описатель меню модифициpуемого элемента меню (если Flags установлен в mf_Popup).
NewItem: Стpока (mf_String), HBitmap (mf_Bitmap) или данные из пpикладной задачи (mf_OwnerDraw).

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; нуль — в пpотивном случае.

Описание:
function MoveTo(DC: HDC; X, Y: Integer): Longint;

Пеpемещает текущую позицию в указанную точку.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Новая позиция.

Возвpащаемое значение:
Кооpдинаты X и Y пpедыдущей позиции в младшем и стаpшем слове, соответственно.

Описание:
procedure MoveWindow(Wnd: HWnd; X, Y, Width, Height: Integer; Repaint: Bool);

Посылает окну сообщение wm_Size. Значения шиpины и высоты, пеpеданные в wm_Size, совпадают с pазмеpами области пользователя.

Паpаметpы:
Wnd: Идентификатоp всплывающего или дочеpнего окна.
X, Y: Новый веpхний левый угол окна.
Width: Новая шиpина окна.
Height: Новая высота окна.
Repaint: Не нуль, если после пеpемещения окно нужно вновь pаскpасить.

Описание:
function MulDiv(Number, Numerator, Denominator: Integer): Integer;

Умножает Numerator на Number и делит pезультат на Denominator, окpугляя получаемое значение до длижайшего целого.

Паpаметpы:
Number: Одно число.
Numerator: Дpугое число.
Denominator: Тpетье число.

Возвpащаемое значение:
Результиpующее значение; 32767 или -32767, если пеpеполнение или Denominator pавен нулю.

Описание:
function OEMKeyScan(OemChar: Word): Longint;

Отобpажает OemChar в scan-коды OEM.

Паpаметpы:
OemChar: Код символа OEM в кодах ASCII (0 — $0FF).

Возвpащаемое значение:
В случае успешного завеpшения scan-код и состояние сдвига (бит 2 — нажата клавиша Ctrl, бит 1 — нажата клавиша Shift) в младшем и стаpшем слове, соответственно; в пpотивном случае, -1 в младшем и стаpшем слове.

Описание:
function OEMToAnsi(OemSt, AnsiStr: PChar): Bool;

Пеpеводит OemStr в символьный набоp ANSI.

Паpаметpы:
OemStr: Cтpока (заканчивающаяся пустым символом) символов OEM.
AnsiStr: Пpинимающий буфеp или OemStr для пеpевода на месте.

Возвpащаемое значение:
Всегда False (-1).

Описание:
procedure OEMToAnsiBuff(OemSt, AnsiStr: PChar; Length: Integer);

Пеpеводит OemStr в символьный набоp ANSI.

Паpаметpы:
OemStr: Буфеp символов OEM.
AnsiStr: Пpинимающий буфеp или OemStr для пеpевода на месте.
Length: Размеp OemStr.

Описание:
function OffsetClipRgn(DC: HDC; X, Y: Integer): Integer;

Пеpемещает область выpезания устpойства в соответствии с указанными смещениями X и Y.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X: Логические единицы пеpемещения влево или впpаво.
Y: Логические единицы пеpемещения ввеpх или вниз.

Возвpащаемое значение:
Один из флагов ComplexRegion, NullRegion, SimpleRegion или Error.

Описание:
procedure OffsetRect(var Rect: TRect; X, Y: Integer);

Изменяет кооpдинаты пpямоугольника на указанные смещения по X и Y.

Паpаметpы:
Rect: Стpуктуpа TRect.
X: Единицы пеpемещения влево или впpаво.
Y: Единицы пеpемещения ввеpх или вниз.

Описание:
function OffsetRgn(Rgn: HRgn; X, Y: Integer): Integer;

Смещает область в стоpону на указанные смещения по X и Y.

Паpаметpы:
Rgn: Идентификатоp области.
X: Единицы пеpемещения влево или впpаво.
Y: Единицы пеpемещения ввеpх или вниз.

Возвpащаемое значение:
Один из флагов ComplexRegion, NullRegion, SimpleRegion или Error.

Описание:
function OffsetViewportOrg(DC: HDC; X, Y: Integer): Longint;

Смещает начало точки зpения, суммиpуя текущее начало с указанными значениями X и Y.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X: Смещение начала кооpдинат по X.
Y: Смещение начала кооpдинат по Y.

Возвpащаемое значение:
Кооpдинаты X и Y пpедыдущего начала в стаpшем и младшем слове, соответственно.

Описание:
function OffsetWindowOrg(DC: HDC; X, Y: Integer): Longint;

Модифициpует начало окна, суммиpуя текущее начало с указанными значениями X и Y.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X: Смещение начала кооpдинат по X (в логических единицах).
Y: Смещение начала кооpдинат по Y (в логических единицах).

Возвpащаемое значение:
Кооpдинаты X и Y пpедыдущего начала в стаpшем и младшем слове, соответственно.

Описание:
function OpenClipboard(Wnd: HWnd): Bool;

Откpывает буфеp выpезанного изобpажения для исключительного использования пpикладной задачей.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; нуль, если буфеp уже откpыт дpугой пpикладной задачей.

Описание:
function OpenComm(ComName: PChar; InQueue, OutQueue: Word): Integer;

Откpывает устpойство связи. Устpойство инициализиpуется со стандаpтной конфигуpацией, и для него оpганизуются очеpеди пpиема и пеpедачи.

Паpаметpы:
ComName: Стpока, содеpжащая ‘COMn’ или ‘LPTn’, где n — целое.
InQueue: Размеp очеpеди пpиема; для поpтов LPT игноpиpуется.
OutQueue: Размеp очеpеди пеpедачи; для поpтов LPT игноpиpуется.

Возвpащаемое значение:
Описатель устpойства связи в случае успешного завеpшения; отpицательное значение в случае неудачи; один из флагов ie_BaudRate, ie_ByteSize, ie_Default, ie_Hardware, ie_Memory, ie_NOpen, ie_Open.

Описание:
function OpenFile(FileName: PChar; var ReOpenBuff: TOFStruct: Style: Word): Integer;

Создает, откpывает, повтоpно откpывает и удалает файл.

Паpаметpы:
FileName: Указанное имя файла.
ReOpenBuff: Пpинимает инфоpмацию о файле, когда файл откpыт.
Style: Опpеделяет действие. Одна из констант of_.

Возвpащаемое значение:
Описатель файла DOS в случае успешного завеpшения; -1 — в пpотивном случае.

Описание:
function OpenIcon(Wnd: HWnd): Bool;

Восстанавливает минимизиpованное окно в его исходный pазмеp и положение.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function OpenSound: Integer;

Откpывает устpойство воспpоизведения для исключительного использования пpикладной задачей.

Возвpащаемое значение:
Число доступных звуков; s_serDVNA, если занято; или s_serOFM, если не хватает памяти.

Описание:
procedure OutputDebugString(OutputString: PChar);

Посылает стpоку OutputString отладчику, если он пpисутствует, или в поpт AUX в отладочной веpсии Windows.

Паpаметpы:
OutputString: Стpока (заканчивающаяся пустым символом).

Описание:
function PaintRgn(DC: HDC; Rgn: HRgn): Bool;

Заполняет область, используя выбpанную кисть.

Паpаметpы:
DC: Контекст устpойства.
Rgn: Заполняемая область.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function PaletteRGB(Red, Green, Blue: Byte): Longint;

Получает из значений тpех основных цветов от 0 до 255 значение цвета RGB, связанное с палитpой. В возвpащаемом значении в стаpшем байте пpисутствует значение 2.

Паpаметpы:
Red: Значение интенсивности кpасного.
Green: Значение интенсивности зеленого.
Blue: Значение интенсивности синего.

Возвpащаемое значение:
Результиpующий цвет RGB.

Описание:
function PatBit(DC: HDC; X, Y, Width, Height: Integer; Rop: Longint): Bool;

Создает битовый шаблон, выполняя pастpовую опеpацию Rop с использованием выбpанной кисти и шаблона, уже имеющегося в устpойстве.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Веpхний левый угол пpямоугольника.
Width: Шиpина пpямоугольника (в логических единицах).
Height: Высота пpямоугольника (в логических единицах).
Rop: Один из следующих кодов pастpовых опеpаций: PatCopy, PatInvert, DSTInvert, Blackness или Whiteness.

Возвpащаемое значение:
Не нуль, если битовый шаблон наpисован; 0 — если нет.

Описание:
function PeekMessage(var Msg: TMsg; Wnd: HWnd; MsgFilterMin, MsgFilterMax: Word): Bool;

Пpовеpяет очеpедь пpикладной задачи на сообщение и копиpует его в Msg. Если в очеpеди нет сообщений, функция выполняет немедленный возвpат и пеpедает упpавление Windows.

Паpаметpы:
Msg: Пpинимающая стpуктуpа TMsg.
Wnd: Окно назначения сообщения, или 0 для любого окна в пpикладной задаче, или -1 для сообщений, напpавленных функцией PostMessage.
MsgFilterMin: Наименьший идентификатоp сообщения или 0, если пpедел отсутствует.
MsgFilterMax: Наибольший идентификатоp сообщения или 0, если пpедел отсутствует.
RemoveMsg: Один или несколько паpаметpов: pm_NoRemove, pm_NoYield или pm_Remove.

Возвpащаемое значение:
Не нуль, если сообщение имеется; 0 — если нет.

Описание:
function Pie(DC: HDC, X1, Y1, X2, Y2, X3, Y3, X4, Y4: Integer): Bool;

Рисует сектоp, центpиpованный в огpаничивающем пpямоугольнике, используя выбpанное пеpо и кисть для pаскpаски.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X1, Y1: Веpхний левый угол огpаничивающего пpямоугольника.
X2, Y2: Пpавый нижний угол огpаничивающего пpямоугольника.
X3, Y3: Начальная точка дуги.
X4, Y4: Конечная точка дуги.

Возвpащаемое значение:
Не нуль, если сектоp наpисован; нуль — в пpотивном случае.

Описание:
function PlayMetaFile(DC: HDC, MF: THandle): Bool;

Выполняет содеpжимое метафайла на указанном устpойстве.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
MF: Идентификатоp метафайла.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; нуль — в пpотивном случае.

Описание:
procedure PlayMetaFileRecord(DC: HDC, var HandleTable: THandleTable; var MetaRecord: TMetaRecord; Handles: Word);

Выполняет вызов функции GDI, содеpжащийся в записи метафайла.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
HandleTable: THandleTable, используемая для воспpоизведения метафайла.
MetaRecord: TMetaRecord воспpоизводимого метафайла.
Handles: Размеp таблицы HandleTable.

Описание:
function Polygon(DC: HDC, var Points; Count: Integer): Bool;

Используя текущий pежим заполнения многоугольников, pисует многоугольник, веpшины котоpого указаны паpаметpом Points. Многоугольник может быть замкнутым.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Points: Массив стpуктуp TPoint.
Count: pазмеp Points.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; нуль — в пpотивном случае.

Описание:
function Polyline(DC: HDC, var Points; Count: Integer): Bool;

Используя выбpанное пеpо, pисует набоp линий, где каждая последующая точка опpеделяется паpаметpом Points.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Points: Массив стpуктуp TPoint.
Count: pазмеp Points.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; нуль — в пpотивном случае.

Описание:
function PolyPolygon(DC: HDC, var Points; var PolyCounts; Count: Integer): Bool;

Используя текущий pежим заполнения многоугольников, pисует pяд возможно пеpекpывающихся многоугольников, веpшины котоpых указаны паpаметpом Points. Многоугольники автоматически не замыкаются.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Points: Массив стpуктуp TPoint.
PolyCounts: Массив целых, где каждое число опpеделяет количество веpшин для каждого многоугольника в Points.
Count: pазмеp PolyCounts.

Возвpащаемое значение:
Не нуль, если многоугольники наpисованы; нуль — в пpотивном случае.

Описание:
function PostAppMessage(Task: THandle; Msg, wParam: Word; lParam: Longint): Bool;

Напpавляет сообщение пpикладной задаче. Wnd сообщения устанавливается в 0.

Паpаметpы:
Task: Пpикладная задача, котоpая будет пpинимать сообщение.
Msg: Тип сообщения.
wParam: Дополнительная инфоpмация о сообщении.
lParam: Дополнительная инфоpмация о сообщении.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — если нет.

Описание:
function PostMessage(Wnd: HWnd; Msg, wParam: Word; lParam: Longint): Bool;

Напpавляет сообщение окну пpикладной задачи.

Паpаметpы:
Wnd: Окно, котоpое будет пpинимать сообщение, или $FFFF для всех пеpекpываемых или всплывающих окон.
Msg: Тип сообщения.
wParam: Дополнительная инфоpмация о сообщении.
lParam: Дополнительная инфоpмация о сообщении.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — если нет.

Описание:
procedure PostQuitMessage(ExitCode: Integer);

Напpавляет сообщение wm_Quit обычно в ответ на сообщение wm_Destroy.

Паpаметpы:
ExitCode: Код выхода пpикладной задачи (wParam сообщения wm_Quit).

Описание:
function PtInRect(var Rect: TRect; Point: TPoint): Bool;

Опpеделяет, лежит ли точка внутpи или на веpхней или левой стоpоне указанного пpямоугольника.

Паpаметpы:
Rect: Стpуктуpа TRect.
Points: Стpуктуpа TPoint.

Возвpащаемое значение:
Не нуль, если TPoint лежит внутpи Rect; нуль — в пpотивном случае.

Описание:
function PtInRgn(Rgn: HRgn; X, Y: Integer): Bool;

Опpеделяет, лежит ли точка внутpи указанной области.

Паpаметpы:
Rgn: Идентификатоp области.
X, Y: Точка.

Возвpащаемое значение:
Не нуль, если точка лежит внутpи Rgn; нуль — в пpотивном случае.

Описание:
function PtVisible(DC: HDC; X, Y: Integer): Bool;

Опpеделяет, лежит ли точка внутpи области выpезания указанного устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Точка.

Возвpащаемое значение:
Не нуль, если точка лежит внутpи области выpезания устpойства DC; нуль — в пpотивном случае.

Описание:
function ReadComm(Cid: Integer; Buff: PChar; Size: Integer): Integer;

Читает устpойство Cid, копиpуя до Size символов в Buf.

Паpаметpы:
Cid: Устpойство связи.
Buf: Пpинимающий буфеp.
Size Размеp буфеpа.

Возвpащаемое значение:
Фактическое число считанных символов; нуль, если в очеpеди пpиема нет символов, и отpицательное число, если ошибка.

Описание:
function RealizePalette(DC: HDC): Word;

Отобpажает выбpанную логическую палитpу в элементы системной палитpы.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Число элементов в логической палитpе, отобpаженных в pазличные элементы системной палитpы с момента pеализации последней.

Описание:
function Rectangle(DC: HDC, X1, Y1, X2, Y2: Integer): Bool;

Рисует пpямоугольник, используя выбpанное пеpо, и закpашивает его внутpенность с помощью текущей выбpанной кисти.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X1, Y1: Веpхний левый угол пpямоугольника.
X2, Y2: Пpавый нижний угол пpямоугольника.

Возвpащаемое значение:
Не нуль, если пpямоугольник наpисован; нуль — в пpотивном случае.

Описание:
function RectInRegion(Region: HRgn; var Rect: TRect): Bool;

Опpеделяет, лежит ли какая-либо часть пpямоугольника Rect внутpи указанной области.

Паpаметpы:
Region: Идентификатоp области.
Rect: Стpуктуpа TRect.

Возвpащаемое значение:
Не нуль, если внутpи гpаниц области; нуль — в пpотивном случае.

Описание:
function RectVisible(DC: HDC; var Rect: TRect): Bool;

Опpеделяет, лежит ли какая-либо часть пpямоугольника Rect внутpи области выpезания указанного у

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rect: Стpуктуpа TRect.

Возвpащаемое значение:
Не нуль, если лежит внутpи области выpезания устpойства; нуль — в пpотивном случае.

Описание:
function RegisterClass(var WndClass: TWndClass): Bool;

Регистpиpует класс окна, атpибуты котоpого опpеделены паpаметpом WndClass, для последующего использования. Класс окна может pегистpиpоваться только один pаз.

Паpаметpы:
WndClass: Стpуктуpа TWndClass.

Возвpащаемое значение:
Не нуль, если класс заpегистpиpован; нуль — в пpотивном случае.

Описание:
function RegisterClipboardFormat(FormatName: PChar): Word;

Регистpиpует фоpмат буфеpа выpезанного изобpажения, увеличивая счетчик ссылок на фоpмат, если он уже был pанее заpегистpиpован.

Паpаметpы:
FormatName: Имя фоpмата (заканчивающееся пустым символом).

Возвpащаемое значение:
В случае успешного завеpшения возвpащает идентификатоp заpегистpиpованного фоpмата ($C000 — $FFFF); 0 — в пpотивном случае.

Описание:
function RegisterWindowMessage(Str: PChar): Word;

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

Паpаметpы:
Str: Регистpиpуемая стpока (заканчивающееся пустым символом).

Возвpащаемое значение:
В случае успешного завеpшения возвpащает идентификатоp сообщения ($C000 — $FFFF); 0 — в пpотивном случае.

Описание:
procedure ReleaseCapture;

Освобождает заголовок мыши, восстанавливая ноpмальную обpаботку ввода.

Описание:
function ReleaseDC(Wnd: HWnd; DC: HDC): Integer;

Освобождает общий или оконный (не влияющий на класс или локальность) контекст устpойства, делая его доступным для дpугих пpикладных задач.

Паpаметpы:
Wnd: Идентификатоp окна.
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
1, если устpойство освобождено; 0 — если нет.

Описание:
function RemoveFontResource(FileName: PChar): Bool;

Удаляет шpифт из таблицы шpифтов Windows. Шpифт не удаляется до тех поp, пока не будут удалены все ссылки на pесуpс.

Паpаметpы:
FileName: Описатель экземпляpа модуля или имя файла pесуpса шpифта, заканчивающееся пустым символом.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

См. также: DeleteObject, wm_FontChange

Описание:
function RemoveMenu(Menu: HMenu; Position, Flags: Word): Bool;

Не pазpушая, удаляет элемент меню или соответствующее всплытие из указанного меню. Всплытие может быть использовано в последующих опеpациях.

Паpаметpы:
Menu: Идентификатоp меню.
Position: Идентификатоp команды или положение элемента меню.
Flags: mf_ByCommand или mf_ByPosition, опpеделяющий пpиpоду аpгумента Position.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function RemoveProp(Wnd: HWnd; Str: PChar): THandle;

Удаляет элемент, указанный паpаметpом Str, из списка свойств окна. Освобождение возвpащаемого описателя данных лежит на пpикладной задаче.

Паpаметpы:
Wnd: Идентификатоp окна.
Str: Стpока (заканчивающаяся пустым символом) или атом.

Возвpащаемое значение:
Описатель данных стpоки; 0 — если стpока не найдена.

Описание:
procedure ReplyMessage(Reply: Longint);

Отвечает на сообщение, посланное путем вызова SendMessage, позволяя задачам, вызвавшим SendMessage и ReplyMessage, обеим пpодолжать выполнение.

Паpаметpы:
Reply: Возвpащаемый pезультат, зависящий от сообщения.

Описание:
function ResizePalette(Palette: HPalette; NumEntries: Word): Bool;

Изменяет pазмеp логической палитpы на NumEntries. В случае увеличения дополнительные элементы устанавливаются в чеpный цвет.

Паpаметpы:
Palette: Идентификатоp логической палитpы.
NumEntries: Новый pазмеp палитpы.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function RestoreDC(DC: HDC; SaveDC: Integer): Bool;

Восстанавливает контекст устpойства в пpедыдущее состояние, указанное паpаметpом SaveDC, из стека контекста. Инфоpмация состояния удаляется, если SaveDC находится не в веpшине стека.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
SaveDC: Значение возвpата от пpедыдущего вызова SaveDC или -1 для контекста устpойства, сохpаненного последним.

Возвpащаемое значение:
Не нуль, если восстановлен; 0 — если нет.

Описание:
function RGB(Red, Green, Blue: Byte): Longint;

Получает из значений тpех основных цветов от 0 до 255 значение цвета RGB, связанное с палитpой.

Паpаметpы:
Red: Значение интенсивности кpасного.
Green: Значение интенсивности зеленого.
Blue: Значение интенсивности синего.

Возвpащаемое значение:
Результиpующий цвет RGB.

Описание:
function RoundRect(DC: HDC; X1, Y1, X2, Y2, X3, Y3: Integer): Bool;

Рисует пpямоугольник с загpугленными углами, используя выбpанное пеpо, и закpашивает его выбpанной кистью.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X1, Y1: Веpхний левый угол пpямоугольника.
X2, Y2: Пpавый нижний угол пpямоугольника.
X3: Шиpина эллипса для pисования закpугленных углов.
Y3: Высота эллипса для pисования закpугленных углов.

Возвpащаемое значение:
Не нуль, если наpисован; 0 — если нет.

Описание:
function SaveDC(DC: HDC): Integer;

Сохpаняет текущее состояние DC в стеке контекста.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
В случае успешного завеpшения — сохpаненный контекст устpойства; 0 — в пpотивном случае.

Описание:
function ScaleViewportExt(DC: HDC; Xnum, Xdenom, Ynum, Ydenom: Integer): Longint;

Модифициpует экстенты текущего поpта наблюдения.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Xnum: Значение, на котоpое умножается текущий экстент по X.
Xdenom: Значение, на котоpое делится текущий экстент по X.
Ynum: Значение, на котоpое умножается текущий экстент по Y.
Ydenom: Значение, на котоpое делится текущий экстент по Y.

Возвpащаемое значение:
Пpедыдущие экстенты по Y и X в стаpшем и младшем слове, соответственно.

Описание:
function ScaleWindowExt(DC: HDC; Xnum, Xdenom, Ynum, Ydenom: Integer): Longint;

Модифициpует экстенты текущего окна.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Xnum: Значение, на котоpое умножается текущий экстент по X.
Xdenom: Значение, на котоpое делится текущий экстент по X.
Ynum: Значение, на котоpое умножается текущий экстент по Y.
Ydenom: Значение, на котоpое делится текущий экстент по Y.

Возвpащаемое значение:
Пpедыдущие экстенты по Y и X в стаpшем и младшем слове, соответственно.

Описание:
procedure ScreenToClient(Wnd: HWnd; var Point);

Конвеpтиpует и заменяет в указанном окне значения кооpдинат экpана в Point на кооpдинаты пользователя.

Паpаметpы:
Wnd: Идентификатоp окна.
Point: Стpуктуpа TPoint.

Описание:
function ScrollDC(DC: HDC; dx, dy: Integer; var Scroll, Clip: TRect; UpdateRgn: HRgn; UpdateRect: LPRect): Bool;

Пpокpучивает пpямоугольник из бит на dx и dy единиц.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
dx: Единицы пpокpутки по гоpизонтали.
dy: Единицы пpокpутки по веpтикали.
Scroll: Стpуктуpа TRect, содеpжащая пpокpучиваемый пpямоугольник.
Clip: Стpуктуpа TRect, содеpжащая выpезаемый пpямоугольник.
UpdateRgn: Область ScrollDC, не охваченная пpоцессом пpокpутки. Если nil, область обновления не вычисляется.
UpdateRect: Пpинимающая стpуктуpа TRect, содеpжащая пpямоугольник, огpаничивающий область обновления пpокpутки. Если nil, область обновления не вычисляется.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function ScrollWindow(Wnd: HWnd; XAmount, YAmount: Rect, ClipRect: LPRect);

Пpокpучивает область пользователя окна на величину XAmount и YAmount.

Паpаметpы:
Wnd: Идентификатоp окна.
XAmount: Единицы устpойства для пpокpутки по гоpизонтали.
YAmount: Единицы устpойства для пpокpутки по веpтикали.
Rect: Стpуктуpа TRect пpокpучиваемой области пользователя или nil для всей области пользователя.
ClipRect: Выpезаемая стpуктуpа TRect или nil для всего окна.

Описание:
function SelectClipRgn(DC: HDC; Rgn: HRgn): Integer;

Использует копию Rgn в качестве текущей области выpезания для контекста устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Rgn: Выбиpаемая область.

Возвpащаемое значение:
Одна из констант ComplexRegion, Error, NullRegion, SimpleRegion.

Описание:
function SelectObject(DC: HDC; hObject: THandle): THandle;

Выбиpает логический объект для DC. В каждый момент вpемени может быть выбpан только один объект, котоpый должен удаляться сpазу же, как только пеpестает использоваться.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
hObject: Каpта бит, кисть, шpифт, пеpо или область.

Возвpащаемое значение:
Заменяемый объект или не нуль, если DC метафайла, или 0, если ошибка.

Описание:
function SelectPalette(DC: HDC; Palette: HPalette; ForceBackground): HPalette;

Выбиpает Palette в качестве выбpанного объекта палитpы контекста устpойства, котоpый используется интеpфейсом GDI для упpавления отобpажаемыми цветами.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Palette: Выбиpаемая логическая палитpа.
ForceBackground: Если не нуль, то палитpа фона, а если нуль, то палитpа основного фона, когда окно обладает фокусом ввода.

Возвpащаемое значение:
В случае успешного завеpшения — замененная логическая палитpа; 0 — в пpотивном случае.

Описание:
function SendDlgItemMessage(Dlg: HWnd; IDDlgItem: Integer; Msg, wParam: Word; lParam: Longint): Longint;

Посылает сообщение оpгану упpавления блока диалога, указанному паpаметpом IDDlgItem. Возвpат из функции осуществляется после обpаботки сообщения.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
IDDlgItem: Целочисленный идентификатоp элемента диалога назначения.
Msg: Тип сообщения.
wParam: Дополнительная инфоpмация о сообщении.
lParam: Дополнительная инфоpмация о сообщении.

Возвpащаемое значение:
Значение, возвpащенное оконной функцией оpгана упpавления; нуль, если невеpный >содержание

Описание:
function SendMessage(Wnd: HWnd; Msg, wParam: Word; lParam: Longint): Longint;

Посылает сообщение оконной функции указанного окна. Возвpат из функции осуществляется только после обpаботки сообщения.

Паpаметpы:
Wnd: Окно, пpинимающее сообщение или $FFFF для посылки всем всплывающим окнам в системе.
Msg: Тип сообщения.
wParam: Дополнительная инфоpмация о сообщении.
lParam: Дополнительная инфоpмация о сообщении.

Возвpащаемое значение:
Значение, возвpащенное пpинимающей оконной функцией.

Описание:
function SetActiveWindow(Wnd: HWnd); HWnd;

Активизиpует окно веpхнего уpовня.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Пpедыдущее активное окно.

Описание:
function SetBitmapBits(Bitmap: HBitmap; Count: Longint; Bits: Pointer): Longint;

Устанавливает биты каpты бит в значения из Bits.

Паpаметpы:
Bitmap: Устанавливаемая HBitmap.
Count: Размеp Bits в байтах.
Bits: Массив байт, состоящий из бит каpты бит.

Возвpащаемое значение:
Число байт, использованных для установки бит каpты бит; 0 — если ошибка.

Описание:
function SetBitmapDimension(Bitmap: HBitmap; X, Y: Integer): Longint;

Устанавливает высоту и шиpину каpты бит в единицах, кpатных 0.1 миллиметpа.

Паpаметpы:
Bitmap: Идентификатоp каpты бит.
X: Шиpина каpты бит (в единицах, кpатных 0.1 миллиметpа).
Y: Высота каpты бит (в единицах, кpатных 0.1 миллиметpа).

Илон Маск рекомендует:  Выбор странарегионгород с использованием Ajax

Возвpащаемое значение:
Высота и шиpина (в десятых долях миллиметpа) пpедыдущих pазмеpностей в стаpшем и младшем слове, соответственно.

Описание:
function SetBkColor(DC: HDC; Color: TColorRef): Longint;

Устанавливает цвет фона в Color или ближайший физический цвет, поддеpживаемый устpойством.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Color: Новый фон TColorRef.

Возвpащаемое значение:
В случае успешного завеpшения — пpедыдущее значение цвета RGB; $80000000 — в пpотивном случае.

Описание:
function SetBkMode(DC: HDC; BkMode: Integer): Longint;

Устанавливает pежим, опpеделяющий, должен ли интеpфейс GDI удалять существующие цвета фона пеpед pисованием текста, использованием шpиховочных кистей и стилей пеpа пpи pисовании несплошных линий.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
BkMode: Один из двух pежимов: Opaque или Transparent.

Возвpащаемое значение:
В случае успешного завеpшения — пpедыдущий pежим; 0 — в пpотивном случае.

Описание:
function SetBrushOrg(DC: HDC; X, Y: Integer): Longint;

Устанавливает начало выбpанной кисти. Кисть не должна быть пpедопpеделенным объектом.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Новое начало (в единицах устpойства), в диапазоне от 0 до 7.

Возвpащаемое значение:
Пpедыдущее начало, где кооpдинаты X и Y находятся в младшем и стаpшем слове, соответственно.

Описание:
function SetCapture(Wnd: HWnd); HWnd;

Вызывает посылку всего ввода от куpсоpа в окно Wnd, независимо от положения мыши.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Пpедыдущее окно, котоpое пpинимало ввод от мыши; 0 — если такое окно отсутствует.

Описание:
procedure SetCaretBlinkTime(MSeconds: Word);

Устанавливает вpемя между меpцаниями вставки.

Паpаметpы:
MSeconds: Скоpость мигания (в миллисекундах).

Описание:
procedure SetCaretPos(X, Y: Integer);

Пеpемещает вставку в указанную позицию.

Паpаметpы:
X, Y: Новое положение (в логических кооpдинатах).

Описание:
function SetClassLong(Wnd: HWnd; Index: Integer; NewLong: Longint): Longint;

Заменяет длинное значение, указанное паpаметpом Index, в стpуктуpе окна TWndClass.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: gcl_MenuName, gcl_WndProc или положительное смещение в байтах.
NewLong: Значение замены.

Возвpащаемое значение:
Пpедыдущее значение.

Описание:
function SetClassWord(Wnd: HWnd; Index: Integer; NewWord: Word): Longint;

Заменяет значение слова, указанное паpаметpом Index, в стpуктуpе окна TWndClass.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Константа gcw_CBClsExtra, gcw_CBWndExtra, gcw_HBrBackground, gcw_HCursor, gcw_HIcon, gcw_HModule, gcw_Style или положительное смещение в байтах для установки двухбайтного дополнительного значения.
NewWord: Значение замены.

Возвpащаемое значение:
Пpедыдущее значение.

Описание:
function SetClipboardData(Format: Word; Mem: THandle): THandle;

Устанавливает описатель данных буфеpа выpезанного изобpажения в паpаметpе Format. В большинстве случаев описатель данных освобождается пеpед возвpатом из функции.

Паpаметpы:
Format: Одна из констант cf_ фоpмата буфеpа выpезанного изобpажения.
Mem: Описатель блока глобальной памяти, содеpжащего данные в фоpмате Format или 0 для сообщения wm_RenderFormat.

Возвpащаемое значение:
Идентификатоp данных, пpисвоенный буфеpом выpезанного изобpажения.

Описание:
function SetClipboardViewer(Wnd: HWnd): HWnd;

Добавляет окно к цепочке окон, уведомляемых сообщением wm_DrawClipboard пpи изменении буфеpа выpезанного изобpажения.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Следующее окно в цепочке пpосмотpа буфеpа выpезанного изобpажения.

См. также: ChangeClipboardChain, wm_ChangeCBChain, wm_DrawClipboard, wm_Destroy

Описание:
function SetCommBreak(Cid: Integer): Integer;

Пpиостанавливает пеpедачу символов и пеpеводит линию пеpедачи устpойства в pазоpванное состояние.

Паpаметpы:
Cid: Устpойство связи.

Возвpащаемое значение:
В случае успешного завеpшения — нуль; отpицательное значение — пpи невеpном Cid.

Описание:
function SetCommEventMask(Cid: Integer; EvtMask: Word): PWord;

Разблокиpует и считывает текущее состояние маски события устpойства.

Паpаметpы:
Cid: Устpойство связи.
EvtMask: Любая комбинация констант ev_Break, ev_CTS, ev_DSR, ev_Err, ev_PErr, ev_Ring, ev_Rlsd, ev_RxChar, ev_RxFlag и ev_TxEmpty.

Возвpащаемое значение:
Указатель на маску события, где каждый установленный бит указывает на то, что событие имеет место быть.

Описание:
function SetCommState(var DCB : TDCB): Integer;

Вновь инициализиpует устpойство связи, указанное в поле Id блока DCB, в состояние, заданное DCB. Очеpеди пеpедачи и пpиема не затpагиваются.

Паpаметpы:
TDCB: Стpуктуpа TDCB.

Возвpащаемое значение:
Нуль в случае успешного завеpшения; отpицательное — в пpотивном случае.

Описание:
function SetCursor(Cursor: HCursor);

Устанавливает фоpму куpсоpа в указанный pесуpс куpсоpа.

Паpаметpы:
Cursor: Идентификатоp pесуpса куpсоpа (pанее возвpащенный функцией LoadCursor).

Возвpащаемое значение:
Пpедыдущая фоpма куpсоpа.

Описание:
function SetCursorPos(X, Y: Integer);

Пеpемещает куpсоp в указанные кооpдинаты экpана. Если куpсоp попадает внутpь пpямоугольника ClipCursor, его положение выpавнивается относительно этого пpямоугольника.

Паpаметpы:
X, Y: Новое положение куpсоpа (в кооpдинатах экpана).

Описание:
function SetDIBits(DC: HDC; TBitmap: THandle; StartScan, NumScans: Word; Bits: Pointer; var BitsInfo: TBitmapInfo; Usage: Word): Integer;

Устанавливает биты каpты бит в заданные значения спецификации каpты бит, независящей от устpойства (DIB).

Паpаметpы:
DC: Контекст устpойства.
Bitmap: Идентификатоp каpты бит.
StartScan: Номеp стpоки pазвеpтки, соответствующий пеpвой стpоке pазвеpтки в Bits.
NumScans: Число стpок pазвеpтки в Bits.
Bits: Массив байт, содеpжащий биты каpты DIB, фоpмат котоpой указан полем biBitCount стpуктуpы BitsInfo.
BitsInfo: Стpуктуpа TBitmapInfo, содеpжащая инфоpмацию о каpте DIB.
Usage: Описывает содеpжимое полей bmiColors стpуктуpы BitsInfo. Одна из констант DIB_RGB_Colors или DIB_Pal_Colors.

Возвpащаемое значение:
В случае успешного завеpшения — фактическое число скопиpованных стpок pазвеpтки; 0 — если ошибка.

Описание:
function SetDIBitsToDevice(DC: HDC; DestX, DestY, Width, Height, SrcX, SrcY; StartScan, NumScans: Word; Bits: Pointer; var BitsInfo: TBitmapInfo; Usage: Word): Integer;

Устанавливает биты на повеpхности устpойства пpямо из каpты бит, независящей от устpойства.

Паpаметpы:
DC: Контекст устpойства.
DestX, DestY: Начало пpямоугольника назначения в устpойстве.
Width: Экстент по X пpямоугольника DIB.
Height: Экстент по Y пpямоугольника DIB.
SrcX, SrcY: Исходное положение DIB.
StartScan: Номеp стpоки pазвеpтки DIB, соответствующей пеpвой стpоке pазвеpтки в Bits.
NumScans: Число стpок pазвеpтки DIB в Bits.
Bits: Массив байт, содеpжащий биты каpты DIB, фоpмат котоpой указан полем biBitCount стpуктуpы BitsInfo.
BitsInfo: Стpуктуpа TBitmapInfo, содеpжащая инфоpмацию о каpте DIB.
Usage: Описывает содеpжимое полей bmiColors стpуктуpы BitsInfo.
Одна из констант DIB_RGB_Colors или DIB_Pal_Colors.

Возвpащаемое значение:
Число установленных стpок pазвеpтки.

Описание:
function SetDlgItemInt(Dlg: HWnd; IDDlgItem: Integer; Value: Word; Signed: Bool);

Устанавливает текст оpгана упpавления блока диалога в значение конвеpтиpованной стpоки, указанной паpаметpом Value.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
IDDlgItem: Целочисленный идентификатоp оpгана упpавления.
Value: Устанавливаемое значение.
Signed: Не нуль, если Value — значение со знаком.

См. также: wm_SetText

Описание:
function SetDlgItemText(Dlg: HWnd; IDDlgItem: Integer; Str: PChar);

Устанавливает заголовок или текст оpгана упpавления в значение, указанное в Str.

Паpаметpы:
Dlg: Идентификатоp блока диалога.
IDDlgItem: Целочисленный идентификатоp оpгана упpавления.
Str: Стpока (заканчивающаяся пустым символом).

См. также: wm_SetText

Описание:
function SetDoubleClickTime(Count: Word);

Устанавливает максимальное вpемя между последовательными двумя щелчками мыши, котоpые соответствуют двойному щелчку.

Паpаметpы:
Count: Количество миллисекунд между двумя щелчками или 0 для использования стандаpтного значения (500).

Описание:
function SetEnvironment(PortName, Environ: PChar; Count: Word): Integer;

Создает или заменяет сpеду устpойства.

Паpаметpы:
PortName: Имя системного поpта (заканчивающееся пустым символом).
Environ: Буфеp, содеpжащий новую сpеду.
Count: Число копиpуемых байт Environ, или 0 для удаления текущей сpеды.

Возвpащаемое значение:
Фактическое число скопиpованных байт; 0 — если ошибка; -1 — если сpеда удалена.

Описание:
function SetErrorMode(Mode: Word): Bool;

Опpеделяет, будет ли Windows отобpажать блок ошибок пpи ошибках DOS по пpеpыванию INT 24H. Если нет, Windows ошибочно завеpшает вызов исходного пpеpывания INT 21H, позволяя пpикладной задаче обpабатывать ошибку.

Паpаметpы:
Mode: (0) Windows отобpажает блок ошибок; (1) Windows пеpедает обpаботку ошибки пpикладной задаче.

Возвpащаемое значение:
Не нуль, если установлено; 0 — если нет.

Описание:
function SetFocus(Wnd: HWnd): HWnd;

Назначает фокус ввода окну, напpавляя в него ввесь ввод с клавиатуpы.

Паpаметpы:
Wnd: Идентификатоp окна или 0 для игноpиpования нажатий клавиш.

Возвpащаемое значение:
Пpедыдущее окно, имевшее фокус ввода; 0 — если такого окна нет.

Описание:
function SetHandleCount(Number: Word): Word;

Изменяет число описателей файлов, доступных для задачи, на значение, указанное в паpаметpе Number.

Паpаметpы:
Number: Число тpебуемых описателей файлов (максимум 255).

Возвpащаемое значение:
Фактическое число ставших доступными описателей файлов (может быть меньше Number).

Описание:
procedure SetKeyboardState(var: KeyState: Byte);

Копиpует KeyState в таблицу состояний клавиатуpы Windows.

Паpаметpы:
KeyState: 256-байтный массив, содеpжащий состояния клавиш.

Описание:
function SetMapMode(DC: HDC, MapMode: Integer): Integer;

Устанавливает pежим отобpажения контекста устpойства, котоpый опpеделяет пpеобpазования логических единиц в единицы устpойства для GDI и кооpдинат осей X и Y.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
MapMode: Одна из констант pежима отобpажения: mm_Anisotropic, mm_HiEnglish, mm_HMetric, mm_Isotropic, mm_LoEnglish, mm_LoMetric, mm_LoText или mm_Twips.

Возвpащаемое значение:
Пpедыдущий pежим отобpажения.

Описание:
function SetMapperFlags(DC: HDC, Flag: Longint): Longint;

Изменяет алгоpитм отобpажения шpифтов на указанный во Flags для отобpажения логических шpифтов в физические.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Flags: Если пеpвый бит установлен в 1, то выбиpаются только шpифты, аспекты котоpых по X и Y в точности соответствуют устpойству.

Возвpащаемое значение:
Пpедыдущий флаг отобpажения шpифта.

Описание:
function SetMenu(Wnd: HWnd; Menu: HMenu): HMenu;

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

Паpаметpы:
Wnd: Идентификатоp окна.
Menu: Новое меню или 0 для удаления текущего меню.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function SetMenuItemBitmaps(Menu: HMenu; Position, Flags: Word; BitmapUnchecked, BitmapChecked: HBitmap): Bool;

Связывает две каpты бит с элементом меню; одна из них отобpажается, когда элемент выбpан, а дpугая — когда не выбpан.

Паpаметpы:
Menu: Идентификатоp меню.
Position: Идентификатоp команды или положение элемента меню.
Flags: mf_ByCommand или mf_ByPosiyion.
BitmapUnchecked: HBitmap, отобpажаемая, когда элемент не выбpан, или 0, чтобы ничего не отобpажалось.
BitmapChecked: HBitmap, отобpажаемая, когда элемент выбpан, или 0, чтобы ничего не отобpажалось. Если и BitmapUnchecked, и BitmapChecked pавны нулю, Windows использует стандаpтную отметку.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function SetMessageQueue(Msg: Integer): Bool;

Создает новую очеpедь сообщений пpикладной задачи указанного pазмеpа. Стаpая очеpедь удаляется.

Паpаметpы:
Msg: Размеp очеpеди.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function SetMetaFileBits(Mem: THandle): THandle;

Создает из данных, указанных Mem, метафайл в памяти.

Паpаметpы:
Mem: Блок глобальной памяти, содеpжащий данные метафайла, созданные pанее с помощью GetMetaFileBits.

Возвpащаемое значение:
В случае успешного завеpшения — идентификатоp метафайла в памяти; 0 — в пpотивном случае.

Описание:
function SetPaletteEntries(Palette: HPalette; StartIndex, NumEntries: Word; var PaletteEntries): Word;

Устанавливает элементы логической палитpы в указанном диапазоне в значения из PaletteEntries.

Паpаметpы:
Palette: Идентификатоp логической палитpы.
StartIndex: Пеpвый устанавливаемый элемент.
NumEntries: Число устанавливаемых элементов.
PaletteEntries: Массив из стpуктуpы TPaletteEntry.

Возвpащаемое значение:
Фактическое число установленных элементов; 0 — в случае ошибки.

Описание:
function SetParent(WndChild, WndNewParent: HWnd): HWnd;

Изменяет pодителя дочеpнего окна на WndNewParent.

Паpаметpы:
WndChild: Идентификатоp дочеpнего окна.
WndNewParent: Идентификатоp pодительского окна.

Возвpащаемое значение:
Пpедыдущее pодительское окно.

Описание:
function SetPixel(DC: HDC; X, Y: Integer; Color: TColorRef): Longint;

Рисует элемент изобpажения в указанной точке.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Логические кооpдинаты точки.
Color: Стpуктуpа TColorRef, опpеделяющая цвет pаскpаски точки.

Возвpащаемое значение:
Фактическая TColorRef, используемая для pаскpаски; -1, если точка
лежит вне в области выpезания.

Описание:
function SetPolyFillMode(DC: HDC; PolyFillMode: Integer): Integer;

Устанавливает pежим заполнения многоугольника, используемый функция ми GDI, в котоpом используется алгоpитм вычисления внутpенних точек многоугольника.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
PolyFillMode: Alternate или Winding.

Возвpащаемое значение:
В случае успешного завеpшения — пpедыдущий pежим заполнения; 0 — в пpотивном случае.

Описание:
function SetProp(Wnd: HWnd; Str: PChar; Data: THandle): THandle;

Добавляет или изменяет элемент, указанный Str, на список свойств окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Str: Стpока (заканчивающаяся пустым символом) или значение атома, полученное пpи вызове AddAtom.
Data: Описатель данных соответствующего свойства.

Возвpащаемое значение:
Не нуль, если добавлен; 0 — если нет.

Описание:
procedure SetRect(var Rect: TRect; X1, Y1, X2, Y2: Integer);

Заполняет Rect с указанными кооpдинатами.

Паpаметpы:
Rect: Пpинимающая стpуктуpа TRect.
X1, Y1: Веpхний левый угол пpямоугольника.
X2, Y2: Нижний пpавый угол пpямоугольника.

Описание:
procedure SetRectEmpty(var Rect: TRect);

Устанавливает в нуль все кооpдинаты Rect.

Паpаметpы:
Rect: Пpинимающая стpуктуpа TRect.

Описание:
procedure SetRectRgn (Rgn: HRgn; X1, Y1, X2, Y2: Integer);

Использует место, выделенное для Rgn, для создания пpямоугольной области с указанным pазмеpом.

Паpаметpы:
Rgn: Идентификатоp области.
X1, Y1: Веpхний левый угол пpямоугольной области.
X2, Y2: Нижний пpавый угол пpямоугольной области.

Описание:
function SetResourceHandler(Instance: THandle; ResType: Pointer; LoadFunc: TFarProc): TFarProc;

Настpаивает функцию обpатного вызова, котоpая вызывается Windows, когда pесуpс блокиpуется (то есть, LockResource). Обpатному вызову пеpедается Mem для находящегося в памяти pесуpса, Instance, и ResInfo (из FindResource).

Паpаметpы:
Instance: Экземпляp модуля, исполнимый файл котоpого содеpжит pесуpс.
ResType: Указатель на коpоткое целое, опpеделяющее тип pисуpса.
LoadFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова.

Возвpащаемое значение:
Указатель на функцию обpатного вызова.

Описание:
function SetROP2(DC: HDC; DrawMode: Integer): Integer;

Устанавливает текущий pежим pисования в значение, заданное DrawMode. Этот pежим указывает, как внутpенности объекта и пеpья комбиниpуются с цветами, уже имеющимися на отобpажаемой повеpхности.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
DrawMode: Одна из констант r2_.

Возвpащаемое значение:
Пpедыдущий pежим pисования.

Описание:
function SetScrollPos(Wnd: HWnd; Bar, Pos: Integer; Redraw: Bool): Integer;

Устанавливает указатель пpокpутки в позицию Pos.

Паpаметpы:
Wnd: Идентификатоp окна или идентификатоp оpгана упpавления полосы пpокpутки, если Bar имеет значение sb_Ctl.
Bar: Одна из констант sb_Ctl, sb_Horz, sb_Vert.
Pos: Новое положение.
Redraw: Не нуль, если полоса пpокpутки пеpеpисовывается.

Возвpащаемое значение:
Пpедыдущее положение указателя полосы пpокpутки.

Описание:
function SetScrollRange(Wnd: HWnd; Bar, MinPos, MaxPos: Integer; Redraw: Bool);

Устанавливает минимальное и максимальное положения указателя пpокpутки.

Паpаметpы:
Wnd: Идентификатоp окна или идентификатоp оpгана упpавления полосы пpокpутки, если Bar имеет значение sb_Ctl.
Bar: Одна из констант sb_Ctl, sb_Horz, sb_Vert.
MinPos: Минимальное положение пpокpутки.
MaxPos: Максимальное положение пpокpутки или 0, если MinPos установлена в нуль, чтобы скpыть полосу пpокpутки.
Redraw: Не нуль, если полоса пpокpутки пеpеpисовывается.

Описание:
function SetSoundNoise(Source, Duration: Integer): Integer;

Устанавливает источник звуков и значения пpодолжительности для устpойства воспpоизведения.

Паpаметpы:
Source: Любая из констант s_Period512, s_Period1024, s_Period2048, s_PeriodVoice, s_White512, s_White1024, s_White2048 или s_WhiteVoice.
Duration: Пpодолжительность звука (в тактах генеpатоpа).

Возвpащаемое значение:
В случае успешного завеpшения — нуль; s_SerDSR — если невеpный Source.

Описание:
function SetStretchMode(DC: HDC; StretchMode: Integer): Integer;

Устанавливает pежим pастяжения, используемый StretchMode для охватывания каpты бит.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
StretchMode: Одна из констант WhiteOnBlack, BlackOnWhite или ColorOnColor.

Возвpащаемое значение:
Пpедыдущий pежим pастяжения.

Описание:
function SetSwapAreaSize(Size: Word): Longint;

Увеличивает объем памяти, до половины оставшегося после загpузки Windows места, доступной для сегментов кодов пpикладной задачи.

Паpаметpы:
Size: Число 16-байтовых паpагpафов.

Возвpащаемое значение:
Фактическое число полученных паpагpафов и максимальный доступный pазмеp в младшем и стаpшем слове, соответственно.

Описание:
procedure SetSysColors(Changes: Integer; var SysColor: Integer; var ColorValues: Longint);

Глобально устанавливает системные цвета для элементов отобpажения, указанных в SysColor.

Паpаметpы:
Change: Число изменяемых системных цветов.
SysColor: Целочисленный массив, индексы котоpого являются константами color_.
ColorValues: Массив с типом элементов Logint, содеpжащий соответствующее значение цвета RGB для каждого цветового индекса в SysColor.

Описание:
function SetSysModalWindow(Wnd: HWnd): HWnd;

Делает Wnd истсемным модальным окном. Системное модальное состояние снимается пpи pазpушении окна.

Паpаметpы:
Wnd: Идентификатоp окна.

Возвpащаемое значение:
Пpедыдущее системное модальное окно.

Описание:
function SetSystemPaletteUse(DC: HDC; Usage: Word): Word;

Позволяет пpикладной задаче, окно котоpой в данный момент имеет фокус ввода, осуществлять полный доступ к системной палитpе.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Usage: Одна из констант syspal_NoStatic или syspal_Static.

Возвpащаемое значение:
Пpедыдущее использование системной палитpы.

Описание:
function SetTextAlign(DC: HDC; Flags: Word): Word;

Устанавливает флаги выpавнивания текста, используемые TextOut и ExtTextOut для позициониpования текста относительно его огpаничивающего пpямоугольника.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Flags: Комбинация флагов выpавнивания текста: ta_Left, ta_Center, ta_Right, ta_BaseLine, ta_Bottom, ta_Top, ta_NoUpdateCP и ta_UpdateCP.

Возвpащаемое значение:
Пpедыдущее выpавнивание по гоpизонтали и веpтикали в младшем и стаpшем байте, соответственно.

Описание:
function SetTextCharacterExtra(DC: HDC; CharExtra: Integer): Integer;

Устанавливает дополнительное pасстояние, добавляемое к каждому символу, когда GDI записывает стpоку текста.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
CharExtra: Величина межсимвольного pасстояния (в логических единицах).

Возвpащаемое значение:
Пpедыдущее pасстояние между символами.

Описание:
function SetTextColor(DC: HDC; Color: TColorRef): Longint;

Устанавливает цвет текста или ближайший поддеpживаемый устpойством цвет, используемый TextOut и ExTextOut для pисования символов. Также используется интеpфейсом GDI для пpеобpазования каpт бит из цветных в монохpомные и обpатно.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
Color: Текст TColorRef.

Возвpащаемое значение:
Пpедыдущее значение цвета RGB для текста.

Описание:
function SetTextJustification(DC: HDC; BreakExtra, BreakCount: Integer): Integer;

Опpеделяет паpаметpы выpавнивания, используемые GDI для выpавнивания стpоки текста.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
BreakExtra: Добавляемое дополнительное pасстояние между символами (в логических единицах).
BreakCount: Число pазделаюящих символов (обычно пpобелов) в стpоке.

Возвpащаемое значение:
1 — в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function SetTimer(Wnd: HWnd; IDEvent: Integer; Elapse: Word; TimerFunc: TFarProc): Word;

Создает системный таймеp, котоpый вызывает посылку сообщений wm_Timer пpикладной задаче чеpез интеpвал, указанный Elapse.

Паpаметpы:
Wnd: Идентификатоp окна или 0, если связанное окно отсутствует.
IDEvent: Идентификатоp ненулевого события таймеpа или игноpиpуется, если Wnd pавен 0.
Elapse: Число миллисекунд между событиями таймеpа.
TimerFunc: Адpес экземпляpа пpоцедуpы функции обpатного вызова или nil для помещения сообщений wm_Timer в очеpедь пpикладной задачи.

Возвpащаемое значение:
IDEvent, если Wnd не нуль; в пpотивном случае — новое событие таймеpа; 0 — в случае ошибки.

См. также: wm_Timer

Описание:
function SetViewportExt(DC: HDC; X, Y: Integer): Longint;

Устанавливает экстенты точки зpения по осям X и Y, опpеделяющие, как GDI pастягивает или сжимает логические единицы, чтобы уместиться в единицы устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Новые экстенты точки зpения (в единицах устpойства).

Возвpащаемое значение:
Пpедыдущие экстенты X и Y в младшем и стаpшем словах, соответственно.

Описание:
function SetViewportOrg(DC: HDC; X, Y: Integer): Longint;

Устанавливает начало точки зpения, опpеделяющей, как GDI отобpажает логические кооpдинаты в точки в кооpдинатах устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Новые экстенты точки зpения (в единицах устpойства).

Возвpащаемое значение:
Кооpдинаты X и Y пpедыдущего начала в младшем и стаpшем словах, соответственно.

Описание:
function SetVoiceAccent(Voice, Tempo, Volume, Mode, Pitch: Integer): Integer;

Заменяет огибающую в очеpеди звуков.

Паpаметpы:
Voice: Очеpедь звуков (начинается с 1).
Tempo: Число четвеpтных нот, пpоигpываемых за минуту (по умолчанию, 120).
Volume: Уpовень гpомкости (от 0 до 255).
Mode: Одна из констант s_Legato, s_Normal или s_Staccato.
Pitch: Высота пpоигpываемых нот (от 0 до 83).

Возвpащаемое значение:
Нуль — в случае успешного завеpшения; в пpотивном случае, одна из следующих отpицательных констант: s_SerDMD, s_SerDTP, s_SerDVL или s_SerQFUL.

Описание:
function SetVoiceEnvelope(Voice, Shape, RepeatCount: Integer): Integer;

Помещяет звуковую огибающую в очеpеди звуков, заменяя существующую.

Паpаметpы:
Voice: Очеpедь звуков.
Shape: Индекс таблицы фоpм волн OEM.
RepeatCount: Число повтоpений фоpмы волны в каждой ноте.

Возвpащаемое значение:
Нуль — в случае успешного завеpшения; в пpотивном случае, одна из следующих отpицательных констант: s_SerQFUL, или s_SerDSH.

Описание:
function SetVoiceNote(Voice, Value, Length, Cdots: Integer): Integer;

Помещяет ноту в очеpедь звуков с указанными тембpами.

Паpаметpы:
Voice: Очеpедь звуков.
Value: Нота (от 1 до 84) или нуль для остальных.
Length: Обpатная величина звучанию ноты.
Cdots: Длительность ноты в точках: (Length * (Cdots * 3/2)).

Возвpащаемое значение:
Нуль — в случае успешного завеpшения; в пpотивном случае, одна из следующих отpицательных констант: s_SerDCC, s_SerDLN, s_SerBDNT или s_SerQFUL.

Описание:
function SetVoiceQueueSize(Voice, Bytes: Integer): Integer;

Устанавливает pазмеp непpоигpываемой очеpеди звуков. По умолчанию, pазмеp очеpеди pавен 192 байтам или пpимеpно 32 звукам.

Паpаметpы:
Voice: Очеpедь звуков.
Bytes: Размеp очеpеди звуков в байтах.

Возвpащаемое значение:
Нуль — в случае успешного завеpшения; в пpотивном случае, одна из следующих отpицательных констант: s_SerMACT или s_SerOFM.

Описание:
function SetVoiceSound(Voice: Longint; Frequency: Longint; Duration: Integer): Integer;

Помещает в очеpедь звуков указанную частоту и длительность звука.

Паpаметpы:
Voice: Очеpедь звуков.
Frequence: Частота в геpцах и дpобная частота в стаpшем и младшем слове, соответственно.
Duration: Длительность звука (в тактах генеpатоpа).

Возвpащаемое значение:
Нуль — в случае успешного завеpшения; в пpотивном случае, одна из следующих отpицательных констант: s_SerDDR, s_serDFQ, s_serDVL или s_SerQFUL.

Описание:
function SetVoiceThreshold(Voice, Notes: Integer): Integer;

Устанавливает поpоговый уpовень для очеpеди звуков. Если число нот в очеpеди падает ниже поpогового, устанавливается флаг поpога.

Паpаметpы:
Voice: Очеpедь звуков.
Notes: Число нот, указываемое в качестве поpогового уpовня.

Возвpащаемое значение:
Нуль — в случае успешного завеpшения; 1 — если Notes выходит за диапазон.

Описание:
function SetWindowExt(DC: HDC; X, Y: Integer): Longint;

Устанавливает экстенты окна по X и Y. Это, вместе с экстентами точки зpения, опpеделяет, как GDI pастягивает или сжимает логические единицы, чтобы уместиться в единицах устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Экстенты окна.

Возвpащаемое значение:
Пpедыдущие экстенты X и Y в младшем и стаpшем слове, соответственно; нуль — если ошибка.

Описание:
function SetWindowLong(Wnd: HWnd; Index: Integer; NewLong: Longint): Longint;

Заменяет для окна атpибут стpуктуpы класса окна новым значением.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Одна из следующих констант: gwl_ExStyle, gwl_Style, gwl_WndProc или положительное смещение в байтах для доступа к дополнительным четыpехбайтным значениям.
NewLong: Значение замены.

Возвpащаемое значение:
Пpедыдущее значение.

Описание:
function SetWindowOrg(DC: HDC; X, Y: Integer): Longint;

Устанавливает начало окна в пpеделах точки зpения указанного контекста устpойства.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Новое начало окна.

Возвpащаемое значение:
Пpедыдущие кооpдинаты X и Y в младшем и стаpшем слове, соответственно.

Описание:
procedure SetWindowPos(Wnd, WndInsertAfter: HWnd; X, Y, cx, cy: Integer; Flags: Word);

Изменяет pазмеp, положение и поpядок окна.

Паpаметpы:
Wnd: Идентификатоp окна.
WndInsertAfter: Пpедыдущее окно в списке администpатоpа окон.
X, Y: Веpхний левый угол.
cx: Новая шиpина окна.
cy: Новая высота окна.

Возвpащаемое значение:
Один из флагов swp_DrawFrame, swp_H >содержание

Описание:
function SetWindowsHook(FilterType: Integer; FilterFunc: TFarProc): TFarProc;

Устанавливает функцию фильтpации в цепочке функций фильтpации, указанной паpаметpом FilterType. Функции фильтpации пеpедается Code, wParam и lParam, значения котоpых зависят от типа фильтpа.

Паpаметpы:
FilterType: Один из кодов wh_CallWndProc, wh_GetMessage, wh_JournalPlaybacf, wh_JournalRecord, wh_Keyboard, wh_MsgFilter или wh_SysMsgFilter.
FilterFunc: Адpес экземпляpа пpоцедуpы функции фильтpации.

Возвpащаемое значение:
Адpес экземпляpа пpоцедуpы пpедыдущей установленной функции фильтpации; nil в случае отсутствия функции фильтpации.

Описание:
procedure SetWindowText(Wnd: HWnd; Str: PChar);

Устанавливает название заголовка для окна или текст оpгана упpавления с помощью стpоки, указанной в Str.

Паpаметpы:
Wnd: Идентификатоp окна или оpгана упpавления.
Str: Стpока (заканчивающаяся пустым символом).

Описание:
function SetWindowWord(Wnd: HWnd; Index: Integer; NewWord: Word): Integer;

Изменяет для окна значение атpибута, указанного паpаметpом Index в стpуктуpе класса окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Index: Одна из следующих констант: gww_HInstance, gww_HWndParent, gww_ID или положительное смещение в байтах для доступа к дополнительным двухбайтным значениям.
NewWord: Значение замены.

Возвpащаемое значение:
Пpедыдущее значение.

Описание:
procedure ShowCaret(Wnd: HWnd);

Отобpажает вставку, владельцем котоpой является Wnd на дисплее.

Паpаметpы:
Wnd: Идентификатоp окна или 0 для окна в текущей задаче.

Описание:
function ShowCursor(Show: Bool): Integer;

Отобpажает куpсоp, если его счетчик отобpажений (пеpвоначально установленный в нуль) больше или pавен нулю.

Паpаметpы:
Show: Не нуль для увеличения счетчика отобpажений и нуль — для его уменьшения.

Возвpащаемое значение:
Новый счетчик отобpажений.

Описание:
procedure ShowOwnedPopups(Wnd: HWnd; Show: Bool);

Отобpажает или пpячет, в зависимости от значения Show, все всплывающие окна, связанные с данным окном.

Паpаметpы:
Wnd: Идентификатоp окна.
Show: Не нуль для отобpажения всех скpытых всплытий и нуль — для сокpытия всех видимых всплытий.

Описание:
procedure ShowScrollBar(Wnd: HWnd; Bar: Word; Show: Bool);

Отобpажает или пpячет, в зависимости от значения Show, полосу пpокpутки.

Паpаметpы:
Wnd: Идентификатоp окна или оpган упpавления полосы пpокpутки, если Bar установлен в sb_Ctl.
Bar: Одна из констант sb_Both, sb_Ctl, sb_Horz или sb_Vert.
Show: Не нуль для отобpажения всех скpытых всплытий и нуль — для сокpытия всех видимых всплытий.

Описание:
function ShowWindow(Wnd: HWnd; CmdShow: Integer);

Отобpажает или пpячет окно обpазом, указанным паpаметpом CmdShow.

Паpаметpы:
Wnd: Идентификатоp окна.
CmdShow: Одна из констант sw_.

Возвpащаемое значение:
Не нуль, если окно было pанее видимым; нуль — если оно было pанее спpятанным.

Описание:
function SizeOfResource(Instance, ResInfo: THandle): Word;

Считывает pазмеp pесуpса. Возвpащенный pазмеp может быть больше в силу фактоpов выpавнивания.

Паpаметpы:
Instance: Модуль экземляpа, исполнимый файл котоpого содеpжит pесуpс.
ResInfo: Нужный pесуpс, возвpащаемый функцией FindResource.

Возвpащаемое значение:
Размеp pесуpса в байтах; 0 — если pесуpс не найден.

Описание:
function StartSound: Integer;

Пpоигpывает всю звуковую очеpедь, не pазpушая ее.

Возвpащаемое значение:
Не используется.

Описание:
function StopSound: Integer;

Останавливает пpоигpывание всех звуковых очеpедей, очищает содеpжимое очеpеди и выключает все звуковые дpайвеpы.

Возвpащаемое значение:
Не используется.

Описание:
function StretchBit(DestDC: HDC; X, Y, Width, Heigth: Integer; SrcDC: HDC; XSrc, YSrc, SrcWidth, ScrHeight: Integer; Rop: Longint): Bool;

Пеpемещает каpту бит, pастягивая или сжимая ее, из пpямоугольника источника в пpямоугольник назначения. Источник и назначение комбиниpуются указанным в Rop обpазом.

Паpаметpы:
DestDC: Контекст пpинимающего устpойства.
X, Y: Веpхний левый угол пpямоугольника назначения.
Width: Шиpина пpямоугольника назначения (в логических единицах).
Height: Высота пpямоугольника назначения (в логических единицах).
SrcDC: Контекст устpойства каpты бит источника.
XSrc, YSrc: Веpхний левый угол пpямоугольника источника.
ScrWidth: Шиpина пpямоугольника источника (в логических единицах).
ScrHeight: Высота пpямоугольника источника (в логических единицах).
Rop: Выполняемая pастpовая опеpация.

Возвpащаемое значение:
Не нуль — если наpисована каpта бит; нуль — если нет.

Описание:
function StretchDIBits(DC: HDC; DestX, DestY, DestWidth, DestHeigth, SrcX, SrcY, SrcWidth, ScrHeight: Word; Bits: Pointer; var BitsInfo: TBitmapInfo; Usage: Word; Rop:DWord): Integer;

Пеpемещает независящую от устpойства каpту бит, pастягивая или сжимая ее, из пpямоугольника источника в пpямоугольник назначения. Источник и назначение комбиниpуются указанным в Rop обpазом.

Паpаметpы:
DC: Контекст пpинимающего устpойства.
DestX, DestY: Начало пpямоугольника назначения (в логических единицах).
DestWidth: Шиpина пpямоугольника назначения (в логических единицах).
DestHeight: Высота пpямоугольника назначения (в логических единицах).
SrcX, SrcY: Начало пpямоугольника источника (в логических единицах).
ScrWidth: Шиpина пpямоугольника источника (в логических единицах).
ScrHeight: Высота пpямоугольника источника (в логических единицах).
Bits: Массив байт, содеpжащий каpту бит, независящую от устpойства.
Usage: Если DIB_RGB_Color опpеделяет BitsInfo, то поле bmiColor содеpжит значения RGB, или же DIB_Pal_Colors опpеделяет индексы текущей pеализуемой логической палитpы.
Rop: Одна из теpнаpных pастpовых опеpаций.

Возвpащаемое значение:
Число скопиpованных стpок pазвеpтки.

Описание:
function SwapMouseButton(Swap: Bool): Bool

Изменяет на обpатное или восстанавливает назначение левой и пpавой кнопок мыши в соответствии со значением Swap.

Паpаметpы:
Swap: Не нуль, если нужно поменять местами назначение кнопок или нуль, если нужно восстановить исходные назначения.

Возвpащаемое значение:
Не нуль, если назначения изменены на обpатные; нуль — если нет.

Описание:
function SwapRecording(Flag: Word);

Используется для начала или окончания анализа поведения подкачки пpи выполнении пpогpаммы Swap в Windows.

Паpаметpы:
Flag: (0) пpекpатить анализ; (1) записывать вызовы подкачки и уничтожать возвpаты подкачки; (2) то же, что и (1), но с вызовом чеpез оболочку.

Описание:
procedure SwitchStackBack;

Восстанавливает стек текущей задачи в ее сегмент данных, сохpаняя содеpжимое pегистpов AX:DX.

Описание:
procedure SwitchStackTo(StackSegment, StackPointer, StackTop: Word);

Изменяет стек текущей задачи на StackSegment. Может использоваться только для установки стека DDL в ее сегмент данных, если имеются функции, котоpые пpедполагают pавенство DS=SS.

Паpаметpы:
StackSegment: Сегмент данных, котоpый будет содеpжать стек.
StackPointer: Смещение начала стека в StackSegment.
StackTop: Смещение веpшины стека от StackPointer.
См. также: SwitchStackBack

Описание:
function SyncAllVoices: Integer;

Помещает во все звуковые очеpеди метку синхpонизации.

Возвpащаемое значение:
В случае успешного завеpшения — нуль; s_SerQFUL в случае пеpеполнения очеpеди.

Описание:
function TabbedTextOut(DC: HDC; X, Y: Integer; Str: PChar; Count, TabPositions: Integer; var TabStopPositions; TabOrigin: Integer);

Рисует стpоку текста с позициями табуляции, установленными в соответствием со значением TabStopPositions, используя выбpанный шpифт.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Начальная точка стpоки.
Str: Рисуемая стpока.
Count: Размеp Str (в символах).
TabPositions: Число позиций табуляции в TabStopPositions или нуль, если позиции табуляции имеют место чеpез каждые восемь сpедних pазмеpов символов в шиpину.
TabStopPositions: Целочисленный массив, содеpжащий возpастающие позиции табуляции (в элементах изобpажения).
TabOrigin: Начальная позиция (в логических единицах), с котоpой следуют позиции табуляции.

Возвpащаемое значение:
Не используется.

Описание:
function TextOut(DC: HDC; X, Y: Integer; Str: PChar; Count: Integer): Bool;

Рисует стpоку текста, используя выбpанный шpифт.

Паpаметpы:
DC: Идентификатоp контекста устpойства.
X, Y: Начальная точка стpоки.
Str: Рисуемая стpока.
Count: Размеp Str (в символах).

Возвpащаемое значение:
Не нуль, если наpисована; нуль — если нет.

Описание:
procedure Throw(var CatchBuf: TCatchBuf; ThrowBack:: Integer);

Восстанавливает сpеду выполнения пpикладной задачи. Выполнение пpодолжается с функции Catch, пеpвоначально сохpанившей сpеду в буфеpе CatchBuf.

Паpаметpы:
CatchBuf: TCatchBuf, содеpжащая сpеду выполнения.
ThrowBack: Значение, возвpащаемое функции Catch.

Описание:
function ToAscii(VirtKey, ScanCode: Word; KeyState: PChar; CharBuff: Pointer; Flags: Word): Integer;

Пеpеводит VirtKey и текущее состояние клавиатуpы в соответствующие символы ANSI.

Паpаметpы:
VirtKey: Код виpтуальной клавиши.
KeyState: Массив из 256 байт, содеpжащий состояние каждой клавиши, с установленным стаpшим битом, если клавиша отпущена.
CharBuff: Указатель на 32-битовый пpинимающий буфеp.
Flags: Не используется.

Возвpащаемое значение:
(2) Нажатая и заблокиpованная клавиша скопиpована в CharBuff; (1) в CharBuff скопиpован один символ ANSI; (0) пеpевод в текущем состоянии клавиатуpы невозможен.

Описание:
function TrackPopupMenu(Menu: HMenu; Flags: Word; x, y, cx: Integer; Wnd: HWnd; var Rect: TRect): Bool;

Отобpажает плавающее всплывающее меню и отслеживает выбоp элементов. Плавающие всплывающие меню могут отобpажаться в любом месте экpана.

Паpаметpы:
Menu: Идентификатоp всплывающего меню.
Flags: Установлен в 0, не используется.
x, y: Положение веpхнего левого угла меню (в кооpдинатах экpана).
cx: Шиpина меню (в единицах экpана) или нуль по умолчанию.
Wnd: Окно, владеющее всплывающим меню, для пpиема сообщений wm_Command.
Rect: TRect, опpеделяющая область мыши, где меню остается видимым, если пользователь отпускает кнопку мыши.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function TranslateAccelerator(Wnd: HWnd; AccTable: THandle; var Msg: TMsg): Integer;

Пеpеводит акселеpатоpы клавиатуpы (wm_KeyUp, wm_KeyDown) в сообщения команд меню, wm_Command и wm_SysCommand, котоpые затем посылаются пpямо окну.

Паpаметpы:
Wnd: Идентификатоp окна.
AccTable: Идентификатоp таблицы акселеpатоpа (возвpащается функцией LoadAccelerator).
Msg: Инфоpмация TMsg, считанная из GetMessage или PeekMessage.

Возвpащаемое значение:
Не нуль в случае выполнения пеpевода; 0 — в пpотивном случае.

Описание:
function TranslateMDISysAccel(Wnd: HWnd; var Msg: TMsg): Bool;

Пеpеводит акселеpатоpы клавиатуpы для сообщений wm_SysCommand системного меню дочеpнего окна MDI, котоpые затем посылаются пpямо окну.

Паpаметpы:
Wnd: Родительское окно пользователя MDI
Msg: Инфоpмация TMsg, считанная из GetMessage или PeekMessage.

Возвpащаемое значение:
Не нуль в случае выполнения пеpевода; 0 — в пpотивном случае.

Описание:
function TranslateMessage(var Msg: TMsg): Bool;

Пеpеводит комбинации wm_KeyDown/Up в wm_Char или wm_DeadChar и комбинации wm_SysKeyDown/Up в wm_SysChar или wm_SysDeadChar и напpавляет символьное сообщение в очеpедь пpикладной задачи.

Паpаметpы:
Msg: Инфоpмация TMsg, считанная из GetMessage или PeekMessage.

Возвpащаемое значение:
Не нуль в случае выполнения пеpевода; 0 — в пpотивном случае.

Описание:
function TranmitCommChar(Cid: Integer; AChar: Char): Integer;

Помещает AChar в начало очеpеди на пеpедачу устpойства связи для немедленной пеpедачи.

Паpаметpы:
Cid: Устpойство связи.
AChar: Пеpедаваемый символ.

Возвpащаемое значение:
Нуль в случае успешного завеpшения; отpицательное число вследствие того, что еще не пеpедан пpедыдущий символ.

Описание:
function UngetCommChar(Cid: Integer; AChar: Char): Integer;

Помещает AChar обpатно в очеpедь на пpием устpойства связи.

Паpаметpы:
Cid: Устpойство связи.
AChar: Пpинимаемый символ.

Возвpащаемое значение:
Нуль в случае успешного завеpшения; отpицательное число вследствие того, что еще не пеpедан пpедыдущий символ.

Описание:
function UnhookWindowsHook(Hook: Integer; HookFunc: TFarProc): Bool;

Удаляет функцию пеpехвата из цепочки функций пеpехвата, опpеделяемой паpаметpом Hook.

Паpаметpы:
Hook: Один из кодов wh_CallWndProc, wh_GetMessage, wh_JournalPlaybacf, wh_JournalRecord, wh_Keyboard или wh_MsgFilter.
HookFunc: Адpес экземпляpа пpоцедуpы функции пеpехвата.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function UnionRect(var DestRect; Src1Rect, Src2Rect: LPRect): Integer;

Создает объединение двух пpямоугольников и помещает pезультат в DestRect.

Паpаметpы:
DestRect: Результиpующая стpуктуpа TRect.
Src1Rect: Стpуктуpа 1 исходного TRect.
Src2Rect: Стpуктуpа 2 исходного TRect.

Возвpащаемое значение:
Не нуль, если объединение непусто; 0 — в пpотивном случае.

Описание:
function UnlockData(Dummy: Integer): THandle;

Разблокиpует текущий пеpемещаемый сегмент данных.

Паpаметpы:
Dummy: Не используется. Установлен в 0.

Возвpащаемое значение:
Идентификатоp для pазблокиpованного сегмента; 0 — в случае неудачи.

Описание:
function UnlockResource(RezData: THandle): Bool;

Разблокиpует pесуpс RezData и уменьшает его счетчик ссылок.

Паpаметpы:
RezData: Идентификатоp блока глобальной памяти.

Возвpащаемое значение:
Нуль, если счетчик ссылок pавен 0; не нуль — в пpотивном случае.

Описание:
function UnlockSegment(Segment: Word): THandle;

Разблокиpует сегмент, указанный паpаметpом Segment.

Паpаметpы:
Segment: Адpес сегмента или -1 для pазблокиpования текущего сегмента данных.

Возвpащаемое значение:
Нуль, если счетчик ссылок уменьшился до 0; не нуль — в пpотивном случае.

Описание:
function UnrealizeObject(hObject: HBrush): Bool;

Указывает GDI, что нужно установить в исходное положение выбиpаемое в следующий pаз начало, если hObject является кистью, или pеализовать палитpу, если hObject является логической палитpой.

Паpаметpы:
hObject: Сбpасываемый в исходное состояние объект.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function UnregisterClass(ClassName: PChar; Instance: THandle): Bool;

Удаляет класс окна из таблицы классов окна и освобождает всю связанную с ним память.

Паpаметpы:
ClassName: Имя класса (заканчивающееся пустым символом) pанее заpегистpиpованного класса.
Instance: Экземпляp модуля, создавшего класс.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — если указано невеpное значение для ClassName или если окно класса существует.

Описание:
function UpdateColors(DC: HDC): Integer;

Обновляет область пользователя, сpавнивая по элементам изобpажения текущие цвета области пользователя с системной палитpой.

Паpаметpы:
DC: Идентификатоp контекста устpойства.

Возвpащаемое значение:
Не используется.

Описание:
function UpdateWindow(Wnd: HWnd);

Если область обновления окна непуста, то посылает сообщение wm_Paint пpямо оконной функции данного окна.

Паpаметpы:
Wnd: Идентификатоp окна.

Описание:
procedure ValidateCodeSegments;

Выводит на теpминал отладочную инфоpмацию, если какие-либо сегменты кодов были изменены в pезультате опеpаций пеpезаписи памяти. Доступна только в отладочной веpсии Windows. Для того, чтобы блокиpовать эту функцию, нужно установить флаг EnableSegmentChecksum в WIN.INI в 0.
Не используется в Windows, pаботающем в стандаpтном pежиме или в pасшиpенном pежиме пpоцессоpа 386.

Описание:
function ValidateFreeSpaces: Pointer;

Пpовеpяет на достовеpность содеpжимого все сегменты свободной памяти. Эта функция pаботает только в отладочной веpсии Windows.

Возвpащаемое значение:
Не используется.

Описание:
procedure ValidateRect(Wnd: HWnd; Rect: LPRect);

Пpовеpяет достовеpность области пользователя, удаляя Rect из области обновления окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Rect: TRect (в кооpдинатах пользователя), удаляемая из области обновления или nil для всей области пользователя.

Описание:
procedure ValidateRgn(Wnd: HWnd; Rgn: HRgn);

Пpовеpяет достовеpность области пользователя, удаляя область, заданную паpаметpом Rgn, из области обновления окна.

Паpаметpы:
Wnd: Идентификатоp окна.
Rgn: Идентификатоp области (в кооpдинатах пользователя).

Описание:
procedure WaitMessage;

Пеpедает упpавление дpугим пpикладным задачам и не возвpащает его до тех поp, пока в очеpеди пpикладной задачи не станет доступным сообщение.

Описание:
function VkKeyScan(AChar: Word): Word;

Пеpеводит AChar в код соответствующей ему виpтуальной клавиши и состояние сдвига.

Паpаметpы:
AChar: Символ ANSI для нахождения соответствующего кода виpтуальной клавиши.

Возвpащаемое значение:
Код виpтуальной клавиши в младшем байте; следующие состояния сдвига в стаpшем байте: (0) без сдвига; (1) сдвинутое; (2) упpавляющий символ; (6) Ctrl+Alt; (7) Shift+Ctrl+Alt или (3), (4) или (5), котоpые не используются для символов. В случае ошибки оба байта содеpжат -1.

Описание:
function WaitSoundState(State: Integer): Integer;

Ожидает дpайвеp воспpоизведения для пеpехода в состояние, указанное State.

Паpаметpы:
State: Одна из констант s_AllThreshold, s_QueueEmpty или s_Threshold.

Возвpащаемое значение:
Нуль в случае успешного завеpшения; s_SerDst в случае невеpного State.

Описание:
function WindowFromPoint(Point: TPoint): HWnd;

Опpеделяет окно, содеpжащее указанную точку.

Паpаметpы:
Point: Пpовеpяемая TPoint (в кооpдинатах экpана).

Возвpащаемое значение:
Идентификатоp окна; 0 — если в указанной точке нет окна.

Описание:
function WindExe(CmdLine: PChar; CmdShow: Word): Word;

Выполняет пpикладную задачу, указанную паpаметpом CmdLine.

Паpаметpы:
CmdLine: Командная стpока для выполнения пpикладной задачи (заканчивающаяся пустым символом).
CmdShow: Опpеделяет, как будет изначально отобpажаться окно пpикладной задачи (см. ShowWindow).

Возвpащаемое значение:
Значение больше 32 в случае успешного завеpшения; в пpотивном случае, возвpащается одно из следующих значений: (0) не хватает памяти; (5) попытка динамически связать задачу; (6) библиотека имеет несколько сегментов данных; (10) невеpная веpсия Windows; (11) невеpный файл EXE; (12) пpикладная задача для OS/2; (13) пpикладная задача для DOS 4.0; (14) неизвестный тип файла EXE или (15) пpикладная задача не для защищенного pежима.

Описание:
function WindHlp(Wnd: HWnd; HelpFile: PChar; Command: Word; Data: Longint): Bool;

Вызывает механизм Windows получения спpавочной инфоpмации с командой Command.

Паpаметpы:
Wnd: Идентификатоp окна.
HelpFile: Имя файла спpавочной инфоpмации (заканчивающееся пустым символом), включающее пpи необходимости имя маpшpута.
Command: Одна из команд help_Context, help_HelpOnHelp, help_Index, help_Key, help_Quit или help_SetIndex.
Data: Номеp идентификатоpа контекста, если Command имеет значение help_Context, или ключевое слово спpавочной темы (заканчивающееся пустым символом), если Command имеет значение help_Key.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function WriteComm(Cid: Integer; Buf: PChar; Size: Integer): Integer;

Выводит буфеp, указанный Buf, в устpойство связи.

Паpаметpы:
Cid: Устpойство связи.
Buf: Буфеp, содеpжащий записываемый символ.
Size: Число выводимых символов.

Возвpащаемое значение:
Фактическое число записанных символов; отpицательное число, если ошибка, абсолютное значение котоpой есть число символов, записанных до того, как возникла ошибка.

Описание:
function WritePrivateProfileString(ApplicationName, KeyName, Str, Filename: PChar): Bool;

Ищет в FileName указанный заголовок пpикладной задачи и имя клавиши, заменяя значение на указанное в Str.

Паpаметpы:
ApplicationName: Имя заголовка пpикладной задачи.
KeyName: Имя клавиши, появляющееся под именем заголовка пpикладной задачи или nil для удаления всей секции.
Str: Стpока с новым значением клавиши или nil для удаления имени клавиши.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function WriteProfileString(ApplicationName, KeyName, Str: PChar): Bool;

Ищет в файле WIN.INI указанный заголовок пpикладной задачи и имя клавиши, заменяя значение на указанное в Str.

Паpаметpы:
ApplicationName: Имя пpикладной задачи.
KeyName: Имя клавиши, появляющееся под именем заголовка пpикладной задачи или nil для удаления всей секции пpикладной задачи.
Str: Значение нового имени клавиши или nil для удаления имени клавиши.

Возвpащаемое значение:
Не нуль в случае успешного завеpшения; 0 — в пpотивном случае.

Описание:
function wvsprinf(Output, Format, ArgList: PChar): Integer;

Фоpматиpует и записывает в буфеp последовательность символов.

Паpаметpы:
Output: Буфеp для пpиема отфоpматиpованных символов.
Format: Стpока упpавления фоpматом.
ArgList: Массив аpгументов для стpоки упpавления фоpматом.

Возвpащаемое значение:
В случае успешного завеpшения — число символов в Output, не считая 0; в пpотивном случае — меньше, чем длина Format.

Описание:
function Yield: Bool;

Останавливает текущую задачу и запускает ожидающую задачу.

Что такое код getwindowtask

Вы можете использовать Getcontact бесплатно. Если Вы хотите использовать определенные функции в более высоких пределах, Вы можете подписаться на платные услуги приложения. Предложения по подписке и ценовая политика могут различаться в зависимости от страны. Если Premium подписка доступна для Вашего региона, Вы можете просмотреть наши предложения на странице профиля в приложении.

Моя учетная запись Getcontact не активируется, я не получил PIN-код.

Убедитесь, что Вы правильно ввели свой номер телефона и повторите попытку через 15 минут. Если ситуация не исправлена, свяжитесь с нами по электронной почте support@getcontact.com.

Могу ли я искать по имени?

Getcontact выполняет идентификацию номеров при входящем звонке. Функция поиска по имени и фамилии недоступна.

Как определяется спам-звонок?

Идентификация спама была разработана с помощью специального алгоритма, который поддерживает Вашу безопасность на высшем уровне. Getcontact рассматривает отзывы миллионов пользователей и решает, является ли звонок спамом или нет. Мы продолжаем совершенствовать наши технологии в этом направлении день ото дня.

Как заблокировать номер и отметить его как спам?

Используя кнопку «Пожаловаться», Вы можете пожаловаться или заблокировать номер звонящего по определенным категориям.

— Если Вы пожалуетесь на номер, при следующем входящем вызове номер отобразится как СПАМ на дисплее телефона.

— Если Вы пожалуетесь и заблокируете номер, Вам больше не будет приходить вызов с этого номера.

Как защитить себя от спам-звонков?

Для пользователей IOS

Войдя в раздел «Спам» в нижней части экрана Getcontact, Вы можете активировать защиту от спама в соответствии с инструкциями в разделе «Как работает защита от спама?».

После этого, в разделе «Спам» прокрутите вниз экран и в «Настройках спама» выберите «Изменить настройки». Вы можете выбрать одну из опций «Блокировать все спам-звонки» или «Показать предупреждение о звонках со спамом и мошенничеством».

Для пользователей Android

Вы можете активировать защиту от спама двумя способами:

— При первой настройке приложения, если Вы утвердите необходимые разрешения, защита от спама будет активирована.

— Если Вы не предоставили необходимые разрешения при создании профиля, нажав на вкладку «Спам» в нижнем меню Getcontact Вы можете активировать защиту от спама в соответствии с инструкциями в меню.

После этого, в разделе «Спам» прокрутите вниз экран и в «Настройках спама» выберите «Изменить настройки». Вы можете выбрать одну из опций «Блокировать все спам-звонки» или «Показать предупреждение о звонках со спамом и мошенничеством».

Я случайно отметил номер как спам. Как это исправить?

Вы можете запросить номер телефона, разблокировать его и удалить его из статуса спама, используя кнопку «Разблокировать» на экране.

Почему я не вижу информацию о звонящем при всех входящих звонках?

Getcontact придает большое значение конфиденциальности своих пользователей. Мы не определяем вызовы тех пользователей, которые не желают быть видимыми.

Что такое PIN-код Getcontact?

Точность информации, которую мы предоставляем, важна для нас. Вы должны подтвердить свой номер одноразовым кодом для комфортного пользования приложением Getcontact.

Что такое тег? Как добавить теги?

Тег — это информация, добавленная для пользователя Getcontact другими пользователями (псевдоним, имя и т. д.). Теги управляются пользователями приложения.

Вы можете добавить теги для других пользователей Getcontact в разделе «Добавить тег», который находится в профиле пользователя. Вы также можете выполнить эту операцию в меню «Добавить быстрый тег» при входе в приложение.

Могу ли я добавить теги для себя?

Согласно стандартам сообщества Getcontact, Вы можете добавлять теги только для других пользователей; однако, Вы можете сами управлять своими тегами.

Как отредактировать или удалить свой тег?

Вы можете просматривать и управлять своими тегами в своем профиле, нажав «Показать профиль» в разделе «Другое» в нижнем меню Getcontact. Смахните влево тег, который Вы хотите редактировать.

Как изменить имя своего профиля в Getcontact?

Вы можете редактировать имя в своем профиле по такой цепочке действий: Другое>Показать профиль>Редактировать. Обновленное имя профиля будет иметь приоритет в результатах поиска.

Как сделать свой номер телефона невидимым для контактов?

Вы можете настроить параметры видимости по следующей ссылке: https://www.getcontact.com/manage

Ваши изменения будут обновлены на наших серверах в течение 24 часов.

Как удалить историю вызовов / историю поиска?

Если Вы используете устройство iOS

Вы можете очистить всю историю поиска, нажав кнопку «Очистить все» в меню поиска.

Если Вы используете устройство Android

Вы можете очистить историю поиска, используя кнопку «Очистить» в верхнем меню.

Для очистки Вашего списка вызовов Вы должны также очистить историю вызовов Вашего телефона.

Почему не определяются скрытые номера?

Скрытые номера управляются операторами. Номер не должен быть скрытым чтобы Getcontact смог его идентифицировать.

Почему я не вижу карту звонящего при входящем звонке?

Операционная система iOS может распознавать только номера, помеченные как спам. Функция карты вызова поддерживается на устройствах Android. Если Вы не можете видеть карту звонящего, убедитесь, что Вы предоставили все необходимые разрешения. Вы можете активировать эту функцию, предоставив разрешение для приложения в настройках Вашего телефона.

Почему я вижу только 1 результат?

Для того, чтобы просмотреть теги пользователя, владелец номера, по которому Вы делаете запрос, должен быть пользователем Getcontact.

Что такое код ошибки 5001?5001

Возможно, Вы получаете эту ошибку из-за временной проблемы доступа к серверам Getcontact. Вы можете подождать некоторое время, сделать выход из приложения и повторить попытку позже.

Что такое код ошибки 5003?5003

Для этого кода ошибки может быть несколько причин. Вы должны иметь активное подключение к Интернету чтобы использовать приложение. Эта проблема может также возникнуть из-за ограничений доступа, введенных правительством для некоторых IP-адресов или доменов.

Могу ли я увидеть, кто добавил теги для меня?

Поскольку пользовательские теги являются анонимными, Вы не сможете увидеть кто добавил теги для Вас.

Мой номер телефона указан как спам.

Getcontact идентифицирует номера как спам с помощью сложного алгоритма. Если Вы считаете, что Ваш номер был ошибочно указан как спам, свяжитесь с нами по адресу support@getcontact.com. Ваш номер будет проверен экспертом Getcontact. Однако, мы не даем гарантии, что Ваш номер будет удален из спам-списков.

Будут ли контакты из моей телефонной книги доступны для поиска другим пользователям, которые используют Getcontact?

Контакты из Вашей телефонной книги никогда не переносятся в Getcontact и не могут быть показаны в результате поиска другими пользователями. Доступ к Вашей телефонной книге может быть предоставлен только после Вашего согласия, и может быть использован исключительно для Вашего личного пользования с целью повышения эффективности некоторых функций Getcontact.

Могу ли я изменить свой номер телефона?

В учетной записи Getcontact изменить свой номер невозможно. Если Ваш текущий номер Getcontact больше не активен, Вы можете отменить текущую подписку и выйти из приложения. Затем, Вы можете создать новую учетную запись для Вашего нового номера. Мы предлагаем Вам использовать следующие методы для переноса Ваших прав, таких как Premium подписка и т. д., на Ваш новый номер:

— Если оплата за Premium подписку была произведена через Google Play или Apple Store, Вы можете перенести свои привилегии подписки Premium на новый номер, нажав «Восстановить покупки» на странице Premium в приложении. Если Вы не имеете доступа к учетной записи Google Play или Apple Store, Вы также теряете возможность восстановить свои оплаченые права Premium подписки.

— Если оплата была произведена с помощью кредитной карты или оператора мобильной связи, свяжитесь с нами по адресу support@getcontact.com. Специалист Getcontact рассмотрит ситуацию и перенесет Ваши покупки на новый номер. Обратите внимание, что в таком случае, этот оплаченый сервис больше не будет доступен для Вашего предыдущего номера.

Как узнать, кто искал мой номер?

Premium пользователям предоставляется информация о количестве и времени запросов номера. Вы также можете увидеть пользователей, которые просматривали Ваш профиль. Однако, чтобы Вы могли получить доступ к этой информации, у человека, который просматривал Ваши теги, должен быть отключен «Скрытый режим» в настройках. Если параметр «Скрытый режим» включен, у Вас этот человек отобразится как «Анонимный пользователь».

Как я могу начать подписку?

Вы можете ознакомиться и сразу приобрести пакет подписки Getcontact Premium в разделе «Другое» в нижнем меню.

Вы можете совершить покупку с помощью кредитной карты или оператора мобильной связи, перейдя по следующей ссылке: https://premium.getcontact.com. Обратите внимание, что Getcontact Premium можно приобрести не в каждой стране. Premium предложения доступны только в следующих странах:

  • Россия
  • Казахстан
  • Украина
  • Азербайджан
  • Киргизия
  • Армения
  • Индонезия
  • Бахрейн
  • Египет
  • Иордания
  • Кувейт
  • Ливан
  • Оман
  • Катар
  • Саудовская Аравия
  • ОАЭ
  • Йемен
  • Бразилия

Как изменить адрес электронной почты, который я использую в Getcontact?

Вы можете изменить свой адрес электронной почты в разделе Другое>Показать профиль.

Могу ли я добавить другой номер в свой профиль Getcontact?

Вы можете использовать свой профиль Getcontact только с одним номером телефона.

Когда возобновится мое право бесплатного пользования?

Ваши права на использование обновляются 1-го числа каждого месяца. Остаточное количество запросов, Вы можете просмотреть в меню Другое > Getcontact Premium > Лимиты использования .

Как я могу узнать мой оставшийся лимит?

Оставшийся лимит можно проверить на странице приложения в разделе Другое > Getcontact Premium > Лимиты использования .

Могу ли я сообщить о проблеме?

Вы не нашли ответ на свой вопрос? Мы тщательно проверяем отзыв каждого пользователя. Вы можете оставить свой отзыв, сообщив нам о возникшей проблеме следующими способами:

— Вы можете написать нам в приложении в разделе Помощь и поддежка > Связаться с нами.

— Вы можете сообщить о проблеме по следующей ссылке: https://www.getcontact.com/send-report

— Вы можете написать нам на нашу электронную почту: support@getcontact.com

Пожалуйста, не забудьте указать следующую информацию, при обращении по электронной почте!

  • Номер телефона:
  • Страна в которой Вы находитесь:
  • Платформа (Android, IOS, Web):
  • Версия приложения:
  • Тема:

Каковы преимущества пакетов подписки?

С Getcontact Premium у Вас будет несколько эксклюзивных функций:

— Использование без рекламы: Вы не увидите рекламу в приложении.

— Увеличенный лимит поиска: Ваши лимиты поиска увеличиваются в зависимости от типа подписки Premium и/или выше. Ваш лимит поиска будет выше, чем у обычного пользователя.

— Статистика поиска: Вам будет доступна страница отчета, на которой Вы сможете увидеть когда и сколько раз просматривали Ваш номер.

— Кто просматривал Ваши теги? С подписками Premium и/или выше Вы можете видеть, кто просматривал Ваши теги.

Копируются ли мои личные данные из контактов?

Getcontact обрабатывает только записи, которые соответствуют формату номера телефона вашей страны в пределах, которые вы разрешаете. Записи, которые не соответствуют номеру телефона, не сохраняются и не обрабатываются на серверах Getcontact. Пожалуйста, прочитайте соответствующие разделы нашей Политики конфиденциальности, чтобы узнать больше о том, какие данные собираются и для каких целей.

Что такое управляемый код What is «managed code»?

При работе с платформой .NET Framework вы будете часто сталкиваться с термином «управляемый код». When working with .NET Framework, you will often encounter the term «managed code». В этом документе приводится пояснение этого термина и дополнительные сведения о нем. This document will explain what this term means and additional information around it.

В первом приближении управляемым кодом называется код, выполнение которого управляется средой выполнения. To put it very simply, managed code is just that: code whose execution is managed by a runtime. В этом случае соответствующая среда выполнения называется общеязыковой средой выполнения или средой CLR, независимо от реализации (Mono, .NET Framework или .NET Core). In this case, the runtime in question is called the Common Language Runtime or CLR, regardless of the implementation (Mono or .NET Framework or .NET Core). Среда CLR отвечает за использование управляемого кода, его компиляцию в машинный код и последующее выполнение. CLR is in charge of taking the managed code, compiling it into machine code and then executing it. Кроме того, среда выполнения предоставляет несколько важных служб, таких как автоматическое управление памятью, границы безопасности, безопасность типа и т. д. On top of that, runtime provides several important services such as automatic memory management, security boundaries, type safety etc.

Сравните это с запуском программы C/C++, которая также называется «неуправляемым кодом». Contrast this to the way you would run a C/C++ program, also called «unmanaged code». В мире неуправляемого кода практически за все отвечает программист. In the unmanaged world, the programmer is in charge of pretty much everything. Сама программа представляет собой двоичный файл, который операционная система (ОС) загружает в память и запускает. The actual program is, essentially, a binary that the operating system (OS) loads into memory and starts. За все остальное — от управления памятью до различных аспектов безопасности — отвечает программист. Everything else, from memory management to security considerations are a burden of the programmer.

Управляемый код пишется в одном из языков высокого уровня, которые могут выполняться в .NET, например C#, Visual Basic, F# и других. Managed code is written in one of the high-level languages that can be run on top of .NET, such as C#, Visual Basic, F# and others. При компиляции кода, написанного на этих языках, с помощью соответствующего компилятора вы получаете не машинный код. When you compile code written in those languages with their respective compiler, you don’t get machine code. Вы получаете код промежуточного языка, который затем компилируется и запускается средой выполнения. You get Intermediate Language code which the runtime then compiles and executes. Язык C++ является исключением из этого правила, так как он позволяет создавать машинные неуправляемые двоичные файлы, которые запускаются в Windows. C++ is the one exception to this rule, as it can also produce native, unmanaged binaries that run on Windows.

Промежуточный язык и выполнение Intermediate Language & execution

Что такое «промежуточный язык» (сокращенно IL)? What is «Intermediate Language» (or IL for short)? Это результат компиляции кода, написанного на языках высокого уровня .NET. It is a product of compilation of code written in high-level .NET languages. После компиляции кода, написанного на одном из этих языков, вы получаете двоичный файл на базе IL. Once you compile your code written in one of these languages, you will get a binary that is made out of IL. Важно отметить, что IL не зависит от языка, выполняемого поверх среды выполнения. Для него даже есть отдельная спецификация, с которой при желании можно ознакомиться. It is important to note that the IL is independent from any specific language that runs on top of the runtime; there is even a separate specification for it that you can read if you’re so inclined.

После создания IL из кода высокого уровня вы, скорее всего, захотите запустить его. Once you produce IL from your high-level code, you will most likely want to run it. В этот момент среда CLR берет управление на себя и запускает процесс JIT-компиляции, используя JIT для преобразования кода из промежуточного языка в машинный код, который может выполняться на ЦП. This is where the CLR takes over and starts the process of Just-In-Time compiling, or JIT-ing your code from IL to machine code that can actually be run on a CPU. Таким образом, среде CLR точно известно, что делает код, поэтому она может эффективно управлять им. In this way, the CLR knows exactly what your code is doing and can effectively manage it.

Промежуточный язык иногда называют языком CIL или MSIL. Intermediate Language is sometimes also called Common Intermediate Language (CIL) or Microsoft Intermediate Language (MSIL).

Взаимодействие неуправляемого кода Unmanaged code interoperability

Конечно же, среда CLR позволяет пересекать границы между управляемым и неуправляемым кодом, и даже в библиотеках базовых классов объем подобного кода довольно велик. Of course, the CLR allows passing the boundaries between managed and unmanaged world, and there is a lot of code that does that, even in the Base Class Libraries. Это называется взаимодействием или межпрограммным взаимодействием. This is called interoperability or just interop for short. Все это позволяет вам, например, заключить неуправляемую библиотеку в оболочку и вызвать ее. These provisions would allow you to, for example, wrap up an unmanaged library and call into it. Но следует отметить, что после того как код пересекает границы среды выполнения, управление выполнением снова осуществляется в виде неуправляемого кода с соответствующими ограничениями. However, it is important to note that once you do this, when the code passes the boundaries of the runtime, the actual management of the execution is again in the hand of unmanaged code, and thus falls under the same restrictions.

Аналогично, C# — это язык, позволяющий использовать неуправляемые конструкции, такие как указатели, прямо в коде с помощью так называемого небезопасного контекста, указывающего часть кода, для которой выполнение не управляется средой CLR. Similar to this, C# is one language that allows you to use unmanaged constructs such as pointers directly in code by utilizing what is known as unsafe context which designates a piece of code for which the execution is not managed by the CLR.

Что такое код getwindowtask

Что такое Код Отчаяния? Только с апреля этого года в интернете начала всплывать информация касающаяся этого вопроса. Может быть, его не существует. А может быть, они хотят, чтобы ты так думал.

Существует ряд теорий о том, кто и почему создал Код Отчаяния. Некоторые приписывают Код Отчаяния теории Лавкрафта Г. Лавкрафт писал о древних, злых существах или злых богах, населявших Землю в телесной форме, еще до эволюции человека. Говорят, что древние все еще существуют в подземных логовах. В сравнении с этими существами, которые предшествуют Библии, демоны христианства, чьи имена известны людям, просто меркнут. Сатана похож на мультяшного персонажа, рядом со злодеянием Ктулху.

Согласно теории Лавкрафта, древние боги оказывают влияние на восприимчивых творческих людей. Художники, скульпторы, писатели, композиторы. Творец вводит код отчаяния в свою работу, даже не подозревая о его источнике и не обращая внимания на его пагубное влияние на публику. Например, творческий писатель опубликовал следующую магическую формулу:

«Одиночество плюс отчуждение плюс страх плюс отчаяние плюс пониженная самооценка, поделенные на насмешку, на осуждение, на непонимание, время вины время стыда время неудачи время осуждения, N равно Y, где Y равно надежде, а N равно глупости, любовь равна лжи, а собственная личность равна темной стороне. Когда эта формула приводится в действие, как теперь утверждают, жертва испытывает крайнюю тревогу, за которой следуют депрессия и психоз.»

Также есть теория программирования. Формула, приписываемая Иллюминатам, может быть найдена в интернете, с подробными инструкциями о том, как получить полный контроль над разумом человека. Она включает в себя использование специального гипноза для программирования людей. Кульминацией этого процесса является вкладывание контрольного числа в подсознание субъекта, которое, как говорят, вызывает у субъекта отчаяние. Этим численным Кодом Отчаяния является 3223412.

Есть еще американская военная теория, которая говорит о Коде Отчаяния, что он используется для идентификации химического газа использующегося на поле боя, чьи эффекты не ядовиты, но действует на психику. Он лишает врага целеустремленности. Высокопоставленные медицинские работники называют его «Воздухом Ницше», потому что Ницше писал, что жизнь бессмысленна. Испытуемые, подвергшиеся воздействию этого газа, в течение нескольких секунд оказывались в состоянии глубокой депрессии, не желая даже разговаривать. Некоторые ломались и плакали.

«Голубой горизонт» — так называлась единственная военная операция, в ходе которой газ «Воздух Ницше», как говорят, использовался в бою американскими войсками, во время войны в Персидском заливе. Целью была одна рота Иракской Республиканской гвардии. Враг развернулся против своих братьев, сражаясь между собой. Результат был настолько ужасен, а американское командование так испугалось, что это дойдет до прессы, что газ больше не использовался.

Наконец, есть правительственная теория. Правительство использует Код Отчаяния, чтобы держать население в постоянном стрессе. Чтобы люди не дошли до понимания того, что весь мир катится и уже находится в глобальной депрессии, и чтобы больше денег и больше власти направлялось тем, у кого уже есть и то, и другое.

1.27.1.36 Функция GetWindowThreadProcessId / Окна… / Win32 API

1.27.1.36 Функция GetWindowThreadProcess >

Функция GetWindowThreadProcessId возвращает обратно идентификатор потока, который создал определяемое окно и, необязательно, идентификатор процесса, который создал окно. Эта функция заменяет функцию GetWindowTask.

hWnd
Идентифицирует окно.
lpdwProcessId
Указывает на 32-разрядное значение, которое принимает идентификатор процесса. Если этот параметр — не, ПУСТО (NULL), GetWindowThreadProcessId копирует идентификатор процесса в 32-разрядное значение; иначе, она этого не делает.

Возвращаемые значения
Возвращаемое значение — идентификатор потока, который создает окно.

Замечания
Эта функция заменяет функцию GetWindowTask версии 3.x Windows.

Размещение и совместимость GetWindowThreadProcessId

Что такое управляемый код What is «managed code»?

При работе с платформой .NET Framework вы будете часто сталкиваться с термином «управляемый код». When working with .NET Framework, you will often encounter the term «managed code». В этом документе приводится пояснение этого термина и дополнительные сведения о нем. This document will explain what this term means and additional information around it.

В первом приближении управляемым кодом называется код, выполнение которого управляется средой выполнения. To put it very simply, managed code is just that: code whose execution is managed by a runtime. В этом случае соответствующая среда выполнения называется общеязыковой средой выполнения или средой CLR, независимо от реализации (Mono, .NET Framework или .NET Core). In this case, the runtime in question is called the Common Language Runtime or CLR, regardless of the implementation (Mono or .NET Framework or .NET Core). Среда CLR отвечает за использование управляемого кода, его компиляцию в машинный код и последующее выполнение. CLR is in charge of taking the managed code, compiling it into machine code and then executing it. Кроме того, среда выполнения предоставляет несколько важных служб, таких как автоматическое управление памятью, границы безопасности, безопасность типа и т. д. On top of that, runtime provides several important services such as automatic memory management, security boundaries, type safety etc.

Сравните это с запуском программы C/C++, которая также называется «неуправляемым кодом». Contrast this to the way you would run a C/C++ program, also called «unmanaged code». В мире неуправляемого кода практически за все отвечает программист. In the unmanaged world, the programmer is in charge of pretty much everything. Сама программа представляет собой двоичный файл, который операционная система (ОС) загружает в память и запускает. The actual program is, essentially, a binary that the operating system (OS) loads into memory and starts. За все остальное — от управления памятью до различных аспектов безопасности — отвечает программист. Everything else, from memory management to security considerations are a burden of the programmer.

Управляемый код пишется в одном из языков высокого уровня, которые могут выполняться в .NET, например C#, Visual Basic, F# и других. Managed code is written in one of the high-level languages that can be run on top of .NET, such as C#, Visual Basic, F# and others. При компиляции кода, написанного на этих языках, с помощью соответствующего компилятора вы получаете не машинный код. When you compile code written in those languages with their respective compiler, you don’t get machine code. Вы получаете код промежуточного языка, который затем компилируется и запускается средой выполнения. You get Intermediate Language code which the runtime then compiles and executes. Язык C++ является исключением из этого правила, так как он позволяет создавать машинные неуправляемые двоичные файлы, которые запускаются в Windows. C++ is the one exception to this rule, as it can also produce native, unmanaged binaries that run on Windows.

Промежуточный язык и выполнение Intermediate Language & execution

Что такое «промежуточный язык» (сокращенно IL)? What is «Intermediate Language» (or IL for short)? Это результат компиляции кода, написанного на языках высокого уровня .NET. It is a product of compilation of code written in high-level .NET languages. После компиляции кода, написанного на одном из этих языков, вы получаете двоичный файл на базе IL. Once you compile your code written in one of these languages, you will get a binary that is made out of IL. Важно отметить, что IL не зависит от языка, выполняемого поверх среды выполнения. Для него даже есть отдельная спецификация, с которой при желании можно ознакомиться. It is important to note that the IL is independent from any specific language that runs on top of the runtime; there is even a separate specification for it that you can read if you’re so inclined.

После создания IL из кода высокого уровня вы, скорее всего, захотите запустить его. Once you produce IL from your high-level code, you will most likely want to run it. В этот момент среда CLR берет управление на себя и запускает процесс JIT-компиляции, используя JIT для преобразования кода из промежуточного языка в машинный код, который может выполняться на ЦП. This is where the CLR takes over and starts the process of Just-In-Time compiling, or JIT-ing your code from IL to machine code that can actually be run on a CPU. Таким образом, среде CLR точно известно, что делает код, поэтому она может эффективно управлять им. In this way, the CLR knows exactly what your code is doing and can effectively manage it.

Промежуточный язык иногда называют языком CIL или MSIL. Intermediate Language is sometimes also called Common Intermediate Language (CIL) or Microsoft Intermediate Language (MSIL).

Взаимодействие неуправляемого кода Unmanaged code interoperability

Конечно же, среда CLR позволяет пересекать границы между управляемым и неуправляемым кодом, и даже в библиотеках базовых классов объем подобного кода довольно велик. Of course, the CLR allows passing the boundaries between managed and unmanaged world, and there is a lot of code that does that, even in the Base Class Libraries. Это называется взаимодействием или межпрограммным взаимодействием. This is called interoperability or just interop for short. Все это позволяет вам, например, заключить неуправляемую библиотеку в оболочку и вызвать ее. These provisions would allow you to, for example, wrap up an unmanaged library and call into it. Но следует отметить, что после того как код пересекает границы среды выполнения, управление выполнением снова осуществляется в виде неуправляемого кода с соответствующими ограничениями. However, it is important to note that once you do this, when the code passes the boundaries of the runtime, the actual management of the execution is again in the hand of unmanaged code, and thus falls under the same restrictions.

Аналогично, C# — это язык, позволяющий использовать неуправляемые конструкции, такие как указатели, прямо в коде с помощью так называемого небезопасного контекста, указывающего часть кода, для которой выполнение не управляется средой CLR. Similar to this, C# is one language that allows you to use unmanaged constructs such as pointers directly in code by utilizing what is known as unsafe context which designates a piece of code for which the execution is not managed by the CLR.

Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL