TURBO PASCAL |
Новости
|
9.2.3. Управление модулямиПроцедура FreeLibrary. Заголовок: Procedure FreeLibrary(Lib: THandle); Уменьшает на единицу счетчик ссылок библиотеки, связанной с дескриптором Lib. Функция GetModuleHandle. Заголовок: Function GetModuleHandle(FileName: PChar): THandle; Создает и возвращает дескриптор файла, содержащего исполняемую программу или библиотеку. FileName — ASCIIZ— строка с именем файла. Функция GetModuleFileName. Заголовок: Function GetModuleFileName(Module: THandle; FileName: PChar; Size: Integer): Integer; Возвращает в переменной FileName полное имя файла (с маршрутом поиска), связанного с дескриптором Module. Size — размер переменной FileName. Возвращает мину скопированного в FileName имени, если функция выполнена успешно, или 0, если возникла ошибка. Функция GetModuleUsaqe. Заголовок: Function GetModuleUsage(Module: THandle): Integer; Возвращает счетчик ссылок для модуля, связанного с дескриптором Module. Счетчик ссылок увеличивается на единицу при каждом вызове LoadModule и уменьшается на единицу при вызове FreeModule. Функция GetModuleAddress. Заголовок: Function GetModuleAddress(Module: THandle; ProcName: PChar): TFarProc; В модуле, связанном с дескриптором Handle, ищет процедуру ProcName и возвращает адрес ее точки входа или NIL, если процедура не найдена. Параметр ProcName может содержать либо ASCIIZ— строку с именем процедуры, либо ее порядковый номер. В последнем случае порядковый номер помещается в младшее слово ProcName, а старшее должно содержать 0. Функция LoadLibrary. Заголовок: Function LoadLibrary(LibFileName: PChar): THandle; Загружает файл DLL — библиотеки с именем LibFileName и возвращает его дескриптор. Функция ищет файл в следующем порядке: • в текущем каталоге; • в каталоге Windows; • в системном каталоге Windows; • в каталоге, из которого была запущена программа; • в каталогах, определяемых переменной Path окружения ДОС; • в сетевых каталогах. Если значение, возвращаемое функцией, меньше hInstance_Error, оно определяет одну из следующих ошибок:
При вызове функции она вначале проверяет, была ли уже загружена требуемая библиотека. Каждый вызов функции LoadLibrary наращивает на единицу счетчик ссылок библиотеки, а каждый вызов функции FreeLibrary уменьшает на единицу этот счетчик. |
(с)Все права защищены По всем интересующим вопросам прошу писать на электронный адрес |