Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.05;
Скачать: CL | DM;

Вниз

Загрузка функции из пакета   Найти похожие ветки 

 
AlexKost ©   (2003-04-22 15:38) [0]

Делаю следующее:

M: HMODULE;

M:=LoadLibrary("UTIL.BPL");


Подскажите как получить адрес процедуры из этого пакета?
Предполагаю что GetProcAddress(M, "Piece")
но выдает что такой ф-ции нет.
В пакете ф-ция значится как Util::Piece(()).


 
AlexKost ©   (2003-04-22 15:39) [1]

Извините вместо LoadLibrary делаю LoadPackage


 
evvcom ©   (2003-04-22 15:43) [2]

GetProcAddress и есть. Только имя Util::Piece в пакете не означает, то же имя в библиотеке. Я смотрел секции импорта/экспорта библиотек и программ их использующих, так там все имена типа @@Piece@ESCHE@KAKAYA@@TO@FIGNYA.
Поэтому поставь галку в опциях проекта "Build with runtime packages" и не извращайся.


 
AlexKost ©   (2003-04-22 15:45) [3]

Но все таки кто знает как узнать адрес функции в пакете?


 
REA ©   (2003-04-22 15:59) [4]

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


 
Игорь Шевченко ©   (2003-04-22 18:00) [5]

REA © (22.04.03 15:59)

Пакет обычно экспортирует все функции (по крайней мере, с удивлением увидел, что в Delphi 5 экспортируются даже private-методы классов).



Страницы: 1 вся ветка

Текущий архив: 2003.05.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
1-12694
Valentino
2003-04-23 09:34
2003.05.05
Нужна помощь со списком.


3-12635
admled
2003-04-15 20:36
2003.05.05
Печать из базы одной записи


8-12841
reticon
2003-01-28 23:12
2003.05.05
кучу файлов в один


3-12607
_MAX_
2003-04-14 18:01
2003.05.05
Data Fetch в BDEClientDataSet из Oracle


14-12914
Neft
2003-04-14 22:58
2003.05.05
Работа в Москве