Вниз
Скачать: CL | DM;

Работа с DLL   Найти похожие ветки 

← →
senator   (2004-03-15 08:53) [0]

Подскажите пожалуста, как из dll вытащить заголовки функций.


← →
evvcom   (2004-03-15 09:18) [1]

Неконкретный вопрос. Если просто интересно посмотреть, то каким-нибудь PE-просмотрщиком, если из своей программы, то ищи инфу о структуре PE-формата, конкретно таблица экспорта.


← →
vl_chel ©   (2004-03-15 10:03) [2]

Недавно разбирал вопрос - имена экспортируемых объектов вытащить можно, а парамнетры процедур нет т.к. возможны процедуры с переменным числом параметров. Ответ "Единая база процедур и функций для Delphi"
Для того, чтобы вытащить информацию о параметрах надо иметь информацию о типах, а это могут только COM объекты


← →
evvcom   (2004-03-15 10:17) [3]


> возможны процедуры с переменным числом параметров

Переменное число параметров бывает - но это только чисто внешне. Внутренне реализуется всё равно конкретное число параметров, а то что является переменным, на это обычно передается указатель, и в этом массиве где-то присутствует его длина.
Параметры можно вычислить, если долго и упорно поработать, например в IDA Pro и SoftIce. Но те, кто способны на это в данный момент, таких вопросов не задают, поэтому такие объяснения сейчас преждевременны.


← →
Игорь Шевченко ©   (2004-03-15 12:25) [4]


> Параметры можно вычислить, если долго и упорно поработать


Или если функции написаны на C++ ;)


← →
Алхимик1982   (2004-03-15 12:40) [5]

// если из своей программы, то ищи инфу о структуре PE-формата, конкретно таблица экспорта
Это, конечно, хорошо. Но какие функции использовать для WinAPI и Delphi?


← →
Zacho ©   (2004-03-15 12:52) [6]

Какие, какие.. Функции чтения файлов.


← →
evvcom ©   (2004-03-15 12:55) [7]


> Или если функции написаны на C++

Опять же это, если есть документация. Если используется, например, широко известная mfc42.dll, то вся информация есть в MSDN. А если я напишу на Си никому неизвестную MySuperPuper.dll, то одно знание того, что написал я ее на Си, не поможет.


← →
Игорь Шевченко ©   (2004-03-15 13:25) [8]

evvcom ©   (15.03.04 12:55)


> то одно знание того, что написал я ее на Си, не поможет


На С - не поможет. На С++ - поможет, так как имена функций в С++ включают в себя типы параметров.


← →
evvcom ©   (2004-03-15 14:06) [9]

В Дельфовых runtime packages имена функций тоже включают в себя имена и типы параметров, но если параметр - указатель на нестандартную структуру данных, то по-моему это уже нигде не прописывается. Или я не прав?


← →
Алхимик1982   (2004-03-17 10:07) [10]

//Какие, какие.. Функции чтения файлов.
Каой умный. :) И как же прочесть информацию о таблице экспорта функциями чтения файлов.
Может кто знает функции и как ними работать, которые позволяют получить доступ к таблицам символов файлов? Ведь имена экспорта - это ж символы.


← →
KSergey ©   (2004-03-17 10:18) [11]

> Игорь Шевченко ©   (15.03.04 13:25) [8]
> На С++ - поможет, так как имена функций
> в С++ включают в себя типы параметров.

Вот только, как правило, для экспортируемых ф-ций отключается предыскажение имен... А иначе фиг к этой DLL подберешься из другого языка/компилятора... (не, ну можно, понятно, но...)


← →
KSergey ©   (2004-03-17 10:20) [12]

> Алхимик1982   (17.03.04 10:07) [10]

Яндекс
"Формат PE файлов"


← →
evvcom ©   (2004-03-17 10:22) [13]


> Может кто знает функции и как ними работать, которые позволяют
> получить доступ к таблицам символов файлов? Ведь имена экспорта
> - это ж символы.

Есть подобная ветка с примерами http://delphi84.valuehost.ru/cgi-bin/forum.pl?id=1079353821&n=5. Там таблицы импорта, тебе нужен экспорт, немного переделаешь и ОК. Как переделать, ищи PE-формат.


← →
EXE7   (2004-03-17 10:27) [14]

ReadFile
ReadFileEx
>прочесть информацию о таблице экспорта
смещение с начала файлов до табл импорта\эк
ЗАГОЛОВОК РЕ
>функции и как ними работать
таких нет,свои писать,или если у когото есть наработки


← →
PVOzerski ©   (2004-03-17 11:29) [15]

В исходниках FreePascal это есть. По-моему, класс tDllScannerWin32 или tDllScannerW32 (давно писал, сейчас искать лень) и его класс-родитель tDllScanner.



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

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.021 c
14-1078658912
Undert
2004-03-07 14:28
2004.04.04
Flash


14-1078927680
Тимур
2004-03-10 17:08
2004.04.04
playstation2


8-1069682127
Urvin
2003-11-24 16:55
2004.04.04
DelphiX


14-1078927349
MPS
2004-03-10 17:02
2004.04.04
Как просто вывести текст на печать в Си++?


3-1078214709
Laymer
2004-03-02 11:05
2004.04.04
Memo - поле




   Наверх