20 ответов
Ну, этот вопрос простителен для новичка. В DLL копаться не нужно, тем более в системных. MSDN вам в руки.
А если просто просмотреть список ф-ций в DLL (да и для много другого) можно заюзать HIEW.
Evg64, а какая у Вас вообще цель? Создать свою DLL, просто спортивный интерес или что-то иное? Если Вы хотите использовать функции Win API, то Вам не нужно вообще заботиться о загрузке функции из DLL: за Вас всё уже сделано в виде библиотек. В этом случае, как сказал Lerkin, смотрите MSDN относительно Вашей задачи.
Если же всё-таки нужен список, есть утилита, правда шараварная: PE Explorer. Можно слить триалку на 30 дней, но, думаю, этого хватит, чтобы удовлетворить любопытство 🙂
А вообще узнать больше о длл меня сподвигла банальная мысль о том, что знание возможностей длл файлов расширит возможности программирования)
Насчет MSDN я не совсем понял: ведь не может же там содержаться информации по всему многообразию функций из всего многообразия длл файлов? Я там смотрел, да можно было и не смотреть) Может я что-то понял не так?
Прикинь, может, особенно если учесть что объем МСДН 1.5 гига, и все ф-ции, содержащиеся в длл-ках виндов там описаны.
А вообще работают от обратного: ищут функцию для решения определенных задач, а потом смотрят что надо подключить для вызова этой ф-ции.
И не смотри, не трать время. dll-ку в Блокноте открываешь, и читаешь. Нормальным, русским языком написано.
P.S. Есть начинающие, которым желательно тут же стать заканчивающими.
Попробую развернуто закрыть эту тему.
Как же избежать таких потерь? А достаточно изложить на хорошем форуме свой вариант постижения таинств программирования, и стоически выдержав первую волну сарказма со стороны участников, начать задавать наводящие вопросы, когда посоветуют, например, обратиться к MSDN. Попросить посоветовать доступную для понимания литературу по программированию в WinAPI, и много чего еще.
А самое главное, нужно четко понимать, ЧТО человек собрался программировать и ДЛЯ ЧЕГО.
Как узнать список функций dll библиотеки?
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Как узнать список функций WinAPI для мобильных ОС?
Приветствую всех. Понимаю, тема старая, на всё же. Может кто-нибудь подсказать где можно найти.
Экспорт функций с DLL библиотеки
У меня проблема с экспортом. Выдает ошибку Вот части исходников( я не буду полностью.
Использование функций из Dll-библиотеки
Написал тестовую Dll-библиотеку. После подключения ее к проекту не получается найти адрес функции.
Использование функций сторонней библиотеки из c++ dll
Какой аналог кода (C#): public static extern int Last(string instrument, double price, int.
С помощью таких утилит как IMPDEF из пакета Borland C++ Builder.
Можно также расковырять дизассемблером.
Но только названия. Сигнатуру придется искать в интернете.
Если имеется в виду узнать список программно, то, вроде бы таких API нет,
так что остается изучать формат исполняемого файла.
Хех, Джон, вы не правы
Узнать список функций можно и программным путем, ведь та же утилита IMPDEF умеет это делать.
Для наглядного просмотра списка функций DLL могу предложить воспользоваться Dependency Walker, которая входит в состав набора утилит VC++ или ее аналог может быть отдельно загружен с этого сайта:
http://www.dependencywalker.com/
С уважением,
Владимир
«Классический С++», являющийся языком программирования не привязанным к конкретной операционной системе не имеет встроенных команд по работе с библиотеками DLL, но Win32 API содержит все необходимые ф-ции.
Идентификация функций в библиотеках DLL
Идентификатор функции DLL состоит из следующих элементов:
Имя функции или порядковый номер
Имя файла DLL, в котором находится реализация
Например, при указании функции MessageBox в библиотеке User32.dll определяется функция (MessageBox) и ее расположение (User32.dll, User32 или user32). Программный интерфейс Microsoft Windows (API Windows) может содержать две версии для каждой функции, обрабатывающей символы и строки: версию ANSI для однобайтовых символов и версию Юникода для двухбайтовых символов. Если кодировка не указана, она определяется полем CharSet (по умолчанию ANSI). Некоторые функции могут иметь более двух версий.
Неуправляемую функцию в коде можно переименовать, при условии что новое имя функции соответствует исходной точке входа в библиотеке DLL. Инструкции по переименованию неуправляемой функции DLL в управляемом исходном коде см. в разделе Указание точки входа.
Вызов неуправляемого кода позволяет управлять значительной частью операционной системы с помощью вызова функций в API Windows и других библиотеках DLL. Наряду с API Windows существует несколько других API и библиотек DLL, для которых доступен вызов неуправляемого кода.
В следующей таблице описаны несколько распространенных библиотек DLL в API Windows.
| DLL | Описание содержимого |
|---|---|
| GDI32.dll | Функции интерфейса графических устройств (GDI) для вывода информации на устройство, например функции для рисования и управления шрифтами. |
| Kernel32.dll | Низкоуровневые функции операционной системы для управления памятью и обработки ресурсов. |
| User32.dll | Функции управления Windows для обработки сообщений, таймеров, меню и обмена данными. |
Есть ли способ найти все функции, предоставляемые dll
Я искал способ получить все строки, которые сопоставляются с именами функций в dll.
Я имею в виду все строки, для которых вы можете вызвать GetProcAddress. Если вы делаете шестнадцатеричный дамп dll, символы (строки) есть, но я полагаю, что должен мне системный вызов, чтобы получить эти имена.
13 ответов
Это требует немного работы, но вы можете сделать это программно, используя DbgHelp библиотека от Microsoft.
Если у вас есть MS Visual Studio, есть инструмент командной строки под названием DUMPBIN.
существует три различных типа библиотек DLL под Windows:
классические библиотеки DLL, которые предоставляют все доступные функции в таблице экспорта библиотеки DLL. Вы можете использовать dumpbin.exe или зависит.exe из Visual Studio или бесплатно зависимость walker для изучения этих типов. Мэтт Pietrek написал много статей и утилит для рытья в Win32 PE файлов. Посмотрите на его классический статьи журнала MSDN. Библиотеки DLL C++, содержащие экспортированные классы будет экспортировать каждый метод в классе. К сожалению, он экспортирует искаженные имена, поэтому выход dumpbin практически нечитаем. Вам нужно будет использовать такую программу, как vc++_filt.exe в demangle выход.
com DLL, которые предоставляют COM-объекты. Эти библиотеки DLL предоставляют несколько регулярных экспортированных функций (DllRegisterServer и т. д.), которые позволяют системе COM создавать экземпляры объектов. Есть много утилит, которые могут смотреть на эти библиотеки DLL, но если они не имеют встроенного типа библиотеки, которые они могут быть довольно трудны для изучения. 4Developers есть ряд хороших инструментов COM / ActiveX
Edit: ссылка 4Developers не работает.
Как узнать какие функции есть в dll
Лучший отвечающий
Вопрос
я начинающий программист на VB2010
я просматривал учебники которые есть тут на сайте и наткнулся на статью в которой описывалось вызов API функции «MessageBox» из библиотеки User32.dll. И мне стало интересно а какие ещё функции скрывает эта библиотека. Например мне бы хотелось открыть таким образом другие виды msg Box’а. Например как не будь ErrorBox или что-то в этом духе.
Я искал по интернету с похожими запросами однако все они ссылаются на depends.exe (который якобы должен быть вшит в VS) однако его у меня нет. Искал где скачать и набрёл на depends22_x64. Однако не смог разобраться с ней так как моё познание английского очень низко!
Помогите пожалуйста! Как узнать функции которые хранятся в User32.dll другими методами
Или подскажите самые часто используемые функции из этой библиотеки (желательно с синтаксисом объявления и вызова)
Извиняюсь за назойливость. Однако за ранее благодарю!
