Программирование для защищенного режима 221
помощью обращения к FindResource. Каждый вызов LoadResource наращивает на единицу счетчик ссылок ресурса.
Функция LoadStrinq. Заголовок:
Function LoadString(Instance: THandle; ID: Word;
Buffer: PChar; MaxSize: Integer): Integer;
Для экземпляра программы Instance загружает из строкового ресурса в буфер Buffer строку с идентификатором ID. Длина буфера (вместе с терминальным нулем) задается параметром MaxSize. Возвращает длину загруженной строки или 0, если строка не найдена.
Функция LockResource. Заголовок:
Function LockResource(Res: THandler): Pointer;
Фиксирует в памяти ресурс, связанный с дескриптором Res, и возвращает указатель на первый байт ресурса. Каждый вызов функции LockResource увеличивает на единицу счетчик ссылок ресурса, каждый вызов UnlockResource уменьшает на единицу этот счетчик. Ресурс становится перемещаемым и может выгружаться, если его счетчик содержит 0.
Функция SizeOfResource. Заголовок:
Function SizeOfResource(Instance, Res: THandle): LongInt;
Для экземпляра программы Instance возвращает размер ресурса в байтах, связанного с дескриптором Res.
Функция UnlockResource. Заголовок:
Function UnlockResource(Res: THandle): Boolean;
Уменьшает на единицу счетчик ссылок на ресурс, связанный с дескриптором Res. Если счетчик стал нулевым, ресурс может быть выгружен из памяти.
9.2.5. Функции разного назначения
Процедура Dos3Call. Заголовок:
Procedure Dos3Call;
Позволяет программе вызвать прерывание ДОС $21. Доступ к этой процедуре возможен только на ассемблере.
Процедура FatalExit. Заголовок:
Procedure FatalExit(Code: Integer);
Передает текущее состояние защищенной программы внешнему отладчику. Используется только в отладочном режим. Вызов этой процедуры в рабочем режиме приведет к завершению работы программы.
Функция GetDosEnvironment. Заголовок.