Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.12.09;
Скачать: [xml.tar.bz2];

Вниз

dll список функций   Найти похожие ветки 

 
werb   (2007-11-07 15:25) [0]

Можно ли узнать перечень функций, процедур, которые зашиты в dll?


 
MBo ©   (2007-11-07 15:38) [1]

программа tdump из delphi/bin


 
Dib@zol ©   (2007-11-07 15:39) [2]

c:\>tdump полный_путь_к_твоей_етой_дллке > c:\dump.txt

И на диске C: появится файлик с указанием что та ДЛЛ экспортирует.


 
Palladin ©   (2007-11-07 15:47) [3]

но он не поможет :)


 
vasIZmax ©   (2007-11-07 15:55) [4]

library roject1;

uses
 SysUtils,
 Classes;

{$R *.res}
 function sum (x,y:integer):integer;
 begin
 result:=x+y;
 end;

 procedure umn(var c:integer;x,y:integer);
 begin
 c:=x*y;
 end;
 exports Sum;
   exports umn;
begin
end.


 
vasIZmax ©   (2007-11-07 15:59) [5]

yну вот есть dll-ка такая
library roject1;

uses
 SysUtils,
 Classes;

{$R *.res}
 function sum (x,y:integer):integer;
 begin
 result:=x+y;
 end;

 procedure umn(var c:integer;x,y:integer);
 begin
 c:=x*y;
 end;
 exports Sum;
   exports umn;
begin
end.


а после tdump
получил вот это

Section:             Exports
 Flags:             00000000
 Time Stamp:        00000000
 Major Version:     0000
 Minor Version:     0000

Exports from roject1.dll
 2 exported name(s), 2 export addresse(s).  Ordinal base is 1.
 Sorted by Name:
   RVA      Ord. Hint Name
   —------— —--— —--— —---
   00011F34    2 0000 sum
   00011F3C    1 0001 umn

******************************************************************************
Section:             Resources
 Flags:             00000000
 Time Stamp:        355562BC : Sun May 10 12:18:04 1998
 Major Version:     0000
 Minor Version:     0000

Resources:
Type          Name                   Lang Id
--------------------------------------------
[0 named entries, 4 ID entries]
type: Icon (3)  (next directory @00000030)

             [0 named entries, 1 ID entries]
             type: Cursor (1)  (next directory @000000C8)

                                    [0 named entries, 1 ID entries]
                                    type: Unknown (1049)  (data @000001D0)
                                        Offset:    000182B8
                                        Size:      000002E8
                                        Code Page: 00000000
                                        Reserved:  00000000

type: String Table (6)  (next directory @00000048)

             [0 named entries, 7 ID entries]
             type: Unknown (4090)  (next directory @000000E0)

                                    [0 named entries, 1 ID entries]
                                    type: Unknown (0)  (data @000001E0)
                                        Offset:    000185A0
                                        Size:      0000015C
                                        Code Page: 00000000
                                        Reserved:  00000000

             type: Unknown (4091)  (next directory @000000F8)

                                    [0 named entries, 1 ID entries]
                                    type: Unknown (0)  (data @000001F0)
                                        Offset:    000186FC
                                        Size:      00000208
                                        Code Page: 00000000
                                        Reserved:  00000000

             type: Unknown (4092)  (next directory @00000110)

                                    [0 named entries, 1 ID entries]
                                    type: Unknown (0)  (data @00000200)
                                        Offset:    00018904
                                        Size:      000000EC
                                        Code Page: 00000000
                                        Reserved:  00000000

                                       
(взял только часть экспорта я так понял)
ну и как можно читать это?

P.S. за предыдущий пост сорри — сбой какой-то, имхо


 
Dib@zol ©   (2007-11-07 16:01) [6]

> [4] vasIZmax ©   (07.11.07 15:55)

Ну и? Типа это намёк что TDUMP не видит эти 2 мега подпрограммы? :)

Вота:

******************************************************************************
Section:             Exports
 Flags:             00000000
 Time Stamp:        00000000
 Major Version:     0000
 Minor Version:     0000

Exports from MegaDLL.dll
 2 exported name(s), 2 export addresse(s).  Ordinal base is 1.
 Sorted by Name:
   RVA      Ord. Hint Name
   -------- ---- ---- ----
   00001F2C    2 0000 sum
   00001F34    1 0001 umn


******************************************************************************


 
Черный Шаман   (2007-11-07 16:04) [7]


>
> werb   (07.11.07 15:25)
>
> Можно ли узнать перечень функций, процедур, которые зашиты
> в dll?


http://physio-a.univ-tours.fr/tcplugins/exeinfo.htm


 
vasIZmax ©   (2007-11-07 16:16) [8]

> Dib@zol ©   (07.11.07 16:01)

ну может подпрограммы и не мега:-), но разобраться хотелось бы.
  RVA      Ord. Hint Name
  —------— —--— —--— —---
  00001F2C    2 0000 sum
  00001F34    1 0001 umn

кроме названия процедур нам это ж ничего не дает?(ну, если по сабжу — то решение найдено, конечно).

я это к чему: предположим есть какая-то стороняя dll. как ее использовать? как эти подпрограммы использовать?
Как-то не задавался этим вопросом, ну щас вот интересно стало.


 
Mystic ©   (2007-11-07 16:17) [9]

http://kladovka.net.ru/delphibase/?action=viewfunc&topic=filedll&id=10062


 
Игорь Шевченко ©   (2007-11-07 16:17) [10]


> предположим есть какая-то стороняя dll. как ее использовать?
>  как эти подпрограммы использовать?


F8 или Shift+Delete


 
Rouse_ ©   (2007-11-07 16:36) [11]

http://rouse.drkb.ru/winapi.php#propsheet


 
oldman ©   (2007-11-07 16:45) [12]


> werb   (07.11.07 15:25)  
> Можно ли узнать перечень функций, процедур, которые зашиты
> в dll?


Перечень можно.
А вот с типом и параметрами сложнее...


 
Kerk ©   (2007-11-07 16:47) [13]

Типы параметров IDA Pro во времена моей молодости неплохо умела угадывать


 
Галинка ©   (2007-11-07 17:53) [14]

Нада доку от поставщика этой длл иметь.


 
vasIZmax ©   (2007-11-07 18:39) [15]

Если я правильно понял, то получается вот что:
пишем основные функции в dll. и попав в другие(/чужие/&#133) руки без дока эта библиотечка принесет нулевую пользу обладателю?
ну разве что посмотрит как называются подпрограммы, а как их юзать (читать как «какие параметры используются») он не узнает? Так?


 
Mystic ©   (2007-11-07 19:41) [16]

> без дока эта библиотечка принесет нулевую пользу обладателю?

Почему нулевую? Обладатель может повысить свой навык Asm understanding.


 
Kemuri   (2007-11-07 20:18) [17]


> Kerk ©   (07.11.07 16:47) [13]
> Типы параметров IDA Pro во времена моей молодости неплохо
> умела угадывать

Она не угадывает а знает их. Проблема только в том что знает она их только на стандартные API. А если есть левая дллка то IDA не поможет.

werb   (07.11.07 15:25)  
Можно ли узнать перечень функций, процедур, которые зашиты в dll?

Я вообще использую PETools. Удобная прога для просмотра таблиц импорта и экспорта.


 
Rouse_ ©   (2007-11-07 20:46) [18]


> А если есть левая дллка то IDA не поможет.

Ну обычно общий размер и разбитие рассчитывает правильно. Нужно просто лицензией пятой пользоваться :) Хотя иногда есть промахи :) Но не существенные :)


 
palva ©   (2007-11-07 22:06) [19]

Если dll написана на C++, то (известные мне) компиляторы дополняют (декорируют) имя функций дополнительными символами, которые шифруют количество и тип параметров. Если к тому же из DLL экспортируется само имя функции, а не его псевдоним, то по экспортируемому имени можно определить параметры функции.



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

Форум: "Прочее";
Текущий архив: 2007.12.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.055 c
11-1180272204
Rusya
2007-05-27 17:23
2007.12.09
KOLmdvXLGrid и другие компоненты


2-1195202524
IvanZ
2007-11-16 11:42
2007.12.09
середина TRect


15-1194944354
Ega23
2007-11-13 11:59
2007.12.09
конкурс на имя класса


15-1194890026
Wu Wei
2007-11-12 20:53
2007.12.09
О закрытии веток


3-1180525450
jack128
2007-05-30 15:44
2007.12.09
Работа с FB из нескольких потоков





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский