Есть ли способ найти все функции представленными dll

Ваш браузер не разрешает ваш запрос .. вам нужно установить аддон вашего веб-браузера

Для Chrome: https://chrome.google.com/webstore/detail/allow-control- allow-origi / nlfbmbojpeacfghkpbjhddihlkkiljbi? hl = ru

Для Firefox https://addons.mozilla.org/en-US/firefox/addon/cors-everywhere/

59
задан minty 12 January 2009 в 23:20
поделиться

11 ответов

Требуется немного работы, но можно сделать это программируемо использование библиотека DbgHelp от Microsoft.

Приложения Отладки для Microsoft.Net и Microsoft Windows, John Robbins превосходное (если немного более старый) книга, которая содержит детали использования и полный источник. И, можно взять его на Amazon для дешевого!

7
ответ дан Aaron 7 November 2019 в 14:31
поделиться

Вам не нужен никакой инструмент, и Вы не должны анализировать PE. Просто используйте стандартный API Win32 (D)

, код (в C) много раз публиковался на Рекламе. API Win32 ng (news://comp.os.ms-windows.programmer.win32) (с 1992...)

0
ответ дан 7 November 2019 в 14:31
поделиться

Я предполагаю, что Вы закончите тем, что анализировали файл PE и сделаете demangling сами, если Вы захотите найти имена функций неизвестного dll в или чрезвычайно бесполезной системе во время выполнения ("dumpbin"); волшебство.

необходимо больше согласиться с тем, что Вы хотите.

библиотека BFD делает то, что Вы хотите (и раковина), который является основным компонентом нескольких GNU binutils инструменты. Я не могу быть уверен, будет ли это соответствовать Вашей проблеме.

0
ответ дан artificialidiot 7 November 2019 в 14:31
поделиться

Необходимо осмотреть заголовок PE .dll, так как это в конечном счете, что Windows делает так или иначе.

Принятие у Вас есть указатель на .dll's IMAGE_OPTIONAL_HEADER (можно или использовать dbghelp's ImageNtHeader функция с дескриптором к .dll, загруженному через LoadLibrary, или попытаться найти его сами, если Вы будете знать расположение .dll сами), Вы захотите посмотреть optional_header->DataDirectory[IMAGE_DIRECTORY_ENTRY_EXPORT], найти таблицу экспорта относительно дополнительного заголовка со смещением там, затем обойти таблицу экспорта (это IMAGE_EXPORT_DIRECTORY).

Для funsies, назад совместимое изображение PE начинается с IMAGE_DOS_HEADER; смещение к эти IMAGE_NT_HEADER IMAGE_DOS_HEADER::e_lfanew, и эти IMAGE_OPTIONAL_HEADER встраивается в заголовок NT.

5
ответ дан Tim Cooper 7 November 2019 в 14:31
поделиться

существует программа, названная средством просмотра экспорта dll, которое можно использовать: http://www.nirsoft.net/utils/dll_export_viewer.html

2
ответ дан 7 November 2019 в 14:31
поделиться

Я не знаю о API Win32, чтобы сделать это: вместо этого, Вы (или один из инструментов, упомянутых в других сообщениях), делаете это путем знания двоичного формата файла PE и чтения файла: см. http://msdn.microsoft.com/en-us/magazine/cc301808.aspx (и та статья упомянула утилиту "PEDUMP").

10
ответ дан ChrisW 7 November 2019 в 14:31
поделиться

Существует три отличных типа DLLs в соответствии с Windows:

  1. Классические DLLs, которые представляют каждую доступную функцию в таблице экспорта DLL. Можно использовать dumpbin.exe или depends.exe из Visual Studio или свободное зависимость Уокер для исследования этих типов. Matt Pietrek написал много статей и утилит для рытья в файлы PE Win32. Взгляните на его классика статьи MSDN Magazine . C++ DLLs, которые содержат экспортируемые классы, экспортирует каждый метод в классе. К сожалению, это экспортирует скорректированные имена, таким образом, вывод dumpbin фактически нечитабелен. Необходимо будет использовать программу как vc++_filt.exe к demangle вывод.

  2. COM DLL, которые представляют COM-объекты. Эти DLLs представляют горстку регулярных экспортируемых функций (DllRegisterServer и т.д.), которые позволяют системе COM инстанцировать объектов. Существует много утилит, которые могут посмотреть на эти DLLs, но если они не встроили библиотеки типов, их может быть довольно трудно исследовать. <забастовка> 4Developers имеет много хороших инструментов COM/ActiveX

  3. .NET DLLs, которые содержат блоки.NET. Typiically Вы использовали бы инструмент как Отражатель.NET для рытья в них.

Редактирование: 4Developers ссылка не работает.

33
ответ дан Amogh 7 November 2019 в 14:31
поделиться

Также существует, ЗАВИСИТ программа в http://www.dependencywalker.com/

25
ответ дан Die in Sente 7 November 2019 в 14:31
поделиться

Если у Вас есть Visual Studio MS, существует инструмент командной строки под названием DUMPBIN.

dumpbin /exports <nameofdll>
71
ответ дан Ates Goral 7 November 2019 в 14:31
поделиться

Я использую dumpbinGUI, который дает Вам список экспорта (и намного больше) от щелчка правой кнопкой в Windows Explorer. dumpbin и depends оба даст Вам списки также.

6
ответ дан SollyM 7 November 2019 в 14:31
поделиться

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

Информация о файле DLL Windows 7

Информация о файле DLL Windows XP

2
ответ дан 24 November 2019 в 17:31
поделиться