Главная страница
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.009 c
7-12957
PoiSoN2003
2003-03-13 06:30
2003.05.05
Два драйва


7-12956
Fast
2003-03-13 22:05
2003.05.05
Работа с COM портом.


1-12824
v.topalov
2003-04-22 19:29
2003.05.05
Обман программы


1-12825
anbezr
2003-04-22 19:42
2003.05.05
I/O error 998


3-12672
Vitual
2003-04-16 15:41
2003.05.05
Связанные таблицы