Как узнать, какую dll использует программа
Обновлено: 24.11.2024
БЫСТРЫЕ ПУБЛИКАЦИИ СТАТЕЙ ПРЕДОСТАВЛЯЮТ ИНФОРМАЦИЮ НАПРЯМУЮ ОТ ОРГАНИЗАЦИИ ПОДДЕРЖКИ МАЙКРОСОФТ. ИНФОРМАЦИЯ, СОДЕРЖАЩАЯСЯ ЗДЕСЬ, СОЗДАНА В ОТВЕТЕ НА ВОЗНИКАЮЩИЕ ИЛИ УНИКАЛЬНЫЕ ТЕМЫ ИЛИ ПРЕДНАЗНАЧЕНА ДЛЯ ДОПОЛНЕНИЯ ДРУГОЙ ИНФОРМАЦИИ О БАЗЕ ЗНАНИЙ.
Симптом
Process Explorer — это утилита, предоставляющая информацию о том, какие дескрипторы и библиотеки DLL открыты для каждого процесса. В контексте устранения неполадок Outlook Process Explorer обычно используется для определения того, есть ли у вас какие-либо сторонние библиотеки DLL, работающие в процессе Outlook.exe. Это важный шаг, поскольку он повышает вероятность того, что надстройки или другое программное обеспечение на вашем компьютере могут вызывать проблемы в Outlook.
В этой статье содержится подробная информация о том, как можно использовать Process Explorer для вывода всех DLL-файлов, запущенных в рамках процесса Outlook.exe.
Дополнительная информация
Получение Process Explorer
Первое, что нужно сделать, это получить последнюю версию Process Explorer. Его можно загрузить со следующего сайта Microsoft TechNet:
Обязательно прочитайте информацию на этой странице, чтобы познакомиться с этим инструментом.
Запуск обозревателя процессов
После загрузки и извлечения Process Explorer выполните следующие действия, чтобы собрать список библиотек DLL, работающих в рамках процесса Outlook.exe.
<р>1. Запустите Outlook. <р>2. Дважды щелкните Procexp.exe, чтобы запустить Process Explorer. <р>3. Убедитесь, что в меню «Вид» установлен флажок «Показать нижнюю панель». <р>4. Нажмите CTRL + D или выберите Вид – Нижняя панель – DLL, чтобы включить режим просмотра DLL. <р>5. В верхней панели Process Explorer прокрутите список файлов и выберите Outlook.exe. <р>6. После того, как список библиотек DLL, запущенных в Outlook.exe, появится на нижней панели, нажмите «Сохранить как» в меню «Файл». <р>7. Сохраните файл как Outlook.exe.txt.Анализ вывода Process Explorer
Выходной текстовый файл представляет собой текстовый файл с разделителями табуляцией, который лучше всего открывать в Microsoft Excel, чтобы вы могли использовать функцию фильтра для быстрого поиска всех загруженных библиотек сторонних производителей.
<р>1. Запустите Microsoft Office Excel и откройте файл Outlook.exe.txt. <р>2. В Мастере импорта текста используйте следующие параметры:• Общий формат данных столбца. 3. Прокрутите лист вниз и найдите следующую строку:
Имя Описание Название компании Версия
Это список всех dll (Microsoft и сторонних производителей), работающих в рамках процесса Outlook.exe.
<р>4. Выберите ячейку с именем прямо над списком DLL и включите функцию фильтра. <р>5. Щелкните раскрывающийся список фильтров в поле «Имя», а затем настройте текстовый фильтр со следующими параметрами:Имя — содержит — .dll
<р>6. Выберите раскрывающийся список фильтров в поле «Название компании» и снимите флажки с «Microsoft».Идентификация библиотек Microsoft и сторонних библиотек
Отфильтрованный список dll, отображаемый с помощью описанных выше шагов, будет содержать сторонние dll, работающие в Outlook. Вы можете проверить столбец «Название компании», чтобы определить поставщика, ответственного за файл dll.
В списке фильтров dll есть также некоторые dll, поставляемые с Outlook, которые не отображают «Microsoft» в столбце «Название компании». Чтобы идентифицировать эти библиотеки Microsoft DLL, выполните следующие действия:
<р>1. Запустите Outlook 2010. <р>2. Перейдите на вкладку «Файл» на ленте, затем нажмите кнопку «Параметры». <р>3. В диалоговом окне "Параметры Outlook" нажмите "Надстройки". <р>4. Чтобы изучить надстройки COM, выберите надстройки COM в раскрывающемся списке «Управление» и нажмите «Перейти». <р>5. Выберите каждую надстройку в диалоговом окне «Надстройки COM», а затем проверьте имя файла .dll в разделе «Расположение: информация» в нижней части диалогового окна. В названии надстройки должно быть указано, создан ли файл dll корпорацией Майкрософт. <р>1. Запустите Outlook 2007. <р>2. В меню "Инструменты" нажмите "Центр управления безопасностью". <р>3. В Центре управления безопасностью нажмите Надстройки. <р>4. Чтобы изучить надстройки COM, выберите надстройки COM в раскрывающемся списке «Управление» и нажмите «Перейти». <р>5. Выберите каждую надстройку в диалоговом окне «Надстройки COM», а затем проверьте имя файла .dll в разделе «Расположение: информация» в нижней части диалогового окна. В названии надстройки должно быть указано, создан ли файл dll корпорацией Майкрософт.• Outlook 2003 и более ранние версии
<р>1. Запустите Outlook 2003. <р>2. В меню "Инструменты" нажмите "Параметры". <р>3. На вкладке "Другое" нажмите "Дополнительные параметры". <р>4. Нажмите Надстройки COM. <р>5. Выберите каждую надстройку в диалоговом окне «Надстройки COM», а затем проверьте имя файла .dll в разделе «Расположение: информация» в нижней части диалогового окна. В названии надстройки должно быть указано, создан ли файл dll корпорацией Майкрософт.ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ
MICROSOFT И/ИЛИ ЕЕ ПОСТАВЩИКИ НЕ ДАЮТ ЗАЯВЛЕНИЙ ИЛИ ГАРАНТИЙ В ОТНОШЕНИИ ПРИГОДНОСТИ, НАДЕЖНОСТИ ИЛИ ТОЧНОСТИ ИНФОРМАЦИИ, СОДЕРЖАЩЕЙСЯ В ДОКУМЕНТАХ И СООТВЕТСТВУЮЩИХ ГРАФИКАХ, ОПУБЛИКОВАННЫХ НА ЭТОМ ВЕБ-САЙТЕ («МАТЕРИАЛЫ») ДЛЯ КАКИХ-ЛИБО ЦЕЛЕЙ. МАТЕРИАЛЫ МОГУТ СОДЕРЖАТЬ ТЕХНИЧЕСКИЕ НЕТОЧНОСТИ ИЛИ ОПЕЧАТКИ И МОГУТ БЫТЬ ПЕРЕСМОТРЕНЫ В ЛЮБОЕ ВРЕМЯ БЕЗ УВЕДОМЛЕНИЯ.
В МАКСИМАЛЬНОЙ СТЕПЕНИ, РАЗРЕШЕННОЙ ПРИМЕНИМЫМ ЗАКОНОДАТЕЛЬСТВОМ, МАЙКРОСОФТ И/ИЛИ ЕЕ ПОСТАВЩИКИ ОТКАЗЫВАЮТСЯ И ИСКЛЮЧАЮТ ВСЕ ЗАЯВЛЕНИЯ, ГАРАНТИИ И УСЛОВИЯ, ЯВНО ЯВНЫЕ, ПОДРАЗУМЕВАЕМЫЕ ИЛИ УСТАНОВЛЕННЫЕ ЗАКОНОМ, ВКЛЮЧАЯ, ПОМИМО ПРОЧЕГО, ЗАЯВЛЕНИЯ, ГАРАНТИИ ИЛИ УСЛОВИЯ ПРАВА ПРАВА НАРУШЕНИЕ ПРАВ, УДОВЛЕТВОРИТЕЛЬНОЕ СОСТОЯНИЕ ИЛИ КАЧЕСТВО, КОММЕРЧЕСКАЯ ПРИГОДНОСТЬ И ПРИГОДНОСТЬ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ В ОТНОШЕНИИ МАТЕРИАЛОВ.
Если у меня есть исполняемый файл Windows, как узнать, какие библиотеки DLL он будет загружать?
Я просто говорю о том, какие из них будут загружаться статически, а не о тех, которые можно загрузить динамически с помощью чего-то вроде LoadLibrary.
10 ответов 10
dumpbin — это инструмент, поставляемый с VC++.
Чтобы узнать, какие библиотеки DLL будет импортировать программа:
- Открыть Visual Studio
- Инструменты для пунктов меню | Командная строка Visual Studio
- перейдите в папку с исполняемым файлом
- dumpbin/depends any.exe
Чтобы узнать, какие функции (и библиотеки DLL) будут импортированы, используйте
Это лучший ответ. К сожалению, этот инструмент показывает только библиотеки DLL, загруженные непосредственно для .exe, а не библиотеки DLL, от которых косвенно зависит исполняемый файл.
Есть утилиты, которые сделают это за вас.
Раньше я использовал инструмент MS (depends.exe), который поставлялся с (я думаю) VB.:
VS2010 VS2012 VS2013 VS2015 Current
и, возможно, другие.
Откройте командную строку и введите следующую команду
список задач /m /fi "imagename eq netbeans.exe"
Вместо netbeans.exe введите любое имя вашего исполняемого файла.
Я использовал это, и это не дает мне полный список dll, которые он использует, есть куча dll crystalreports, которые использует мой exe, но я не вижу ни одного упомянутого в списке, напечатанном с помощью этой команды. Есть идеи?
Dependency Walker может помочь вам определить, какая библиотека .dll будет загружена.
Просто зайдите в командную строку и введите список задач /m , вы увидите список dll-файлов, используемых конкретной программой.
Да, это делает то, что вы говорите, однако, если исполняемый файл запускает несколько процессов, вы никогда не узнаете из командной строки, какой процесс был запущен исполняемым файлом, следовательно, вы не будете знать все зависимые dll от исполняемого файла.< /p>
Существует удобный инструмент под названием NDepend, который предоставит вам все зависимости DLL.
Зависимости. Современный обходчик зависимостей с открытым исходным кодом показывает, какие библиотеки DLL будут загружены исполняемым файлом Windows, и хорошо работает в современной Windows 10.
Он немного менее мощный, чем Dependency Walker, но последний может работать или не работать в Windows 10, поскольку последний раз он обновлялся в 2006 году. (Более новые версии Dependency Walker поставлялись в комплекте с некоторыми версиями Windows Development Kit для Windows 10. , но не больше.)
Преимущества: позволяет исследовать уже запущенный процесс (я не нашел возможности присоединить обходчик зависимостей к существующему процессу)
Если требуемый файл .DLL не найден ни в папке программы, ни в папке system32, вы получите окно системной ошибки с сообщением «Программа не может быть запущена, поскольку на вашем компьютере отсутствует XXXXX.dll. Попробуйте переустановить программу, чтобы устранить проблему» при попытке запустить программу.
Решить вышеуказанную проблему так же просто, как найти нужный файл .DLL или .OCX в Интернете и поместить его в папку программы. Если вам нужно повторно распространять программу без появления указанной выше ошибки, вы должны сначала узнать, каковы зависимости программного обеспечения. К счастью, есть стороннее программное обеспечение, которое может сканировать и сообщать вам зависимости программы. Вот 5 из них.
<р>1. Обходчик зависимостей
Dependency Walker – это бесплатный портативный инструмент, который может анализировать любой модуль Windows, например EXE, DLL, OCX, SYS, и сообщать вам зависимости файла. Просто запустите программу, нажмите «Файл» > «Открыть» и выберите файл, который хотите проверить. В программе отобразится иерархическая древовидная диаграмма. Мощной функцией Dependency Walker является возможность обнаружения всех видов зависимостей, включая динамическую загрузку, отложенную загрузку, внедрение и т. д.
<р>2. ПеСтудио
PeStudio на самом деле представляет собой инструмент, предназначенный для анализа исполняемых файлов с целью обнаружения любых аномалий, даже не запуская его на компьютере. Он может сообщить вам много информации о загруженном исполняемом файле, например, язык программирования, используемый для написания программы, результат сканирования Virustotal, хэш MD5/SHA1, архитектуру (32-разрядную или 64-разрядную), сертификаты, ресурсы, строки, и многое другое. Чтобы увидеть зависимости, просто посмотрите на импортированные библиотеки из иерархического дерева, и оно показывает различные типы зависимостей, такие как неявные, загруженные с задержкой и т. д.
<р>3. MiTeC EXE-проводник
Преимуществом MiTeC EXE Explorer является возможность поддержки множества различных типов файлов, таких как исполняемые файлы, DLL, ActiveX, драйверы, кодеки, VxD, шрифты, заставки, пакеты Borland и даже апплеты панели управления! Чтобы проверить зависимость файла, сначала загрузите его в программу и проверьте вкладку «Импорт». Отчет можно сохранить в виде текстового файла из меню файла.
<р>4. Обозреватель CFF
Несмотря на то, что существует более новая версия под названием PE Insider, созданная тем же автором CFF Explorer, мы по-прежнему предпочитаем старую версию, поскольку ее функции более полны, а более новая версия PE Insider представляет собой очень простую программу просмотра. Помимо встроенного обходчика зависимостей, CFF Explorer также поставляется с шестнадцатеричным редактором, идентификатором для проверки языка программирования, используемого для загруженного файла, быстрым дизассемблером, редактором ресурсов и даже компрессором UPX.
<р>5. АдмиралDebilitate
Дополнительный совет. Если вы хотите повторно распространять исполняемый файл вместе с зависимостями и убедиться, что они могут работать в большинстве операционных систем Windows, нет необходимости включать все обнаруженные зависимости, показанные упомянутыми выше инструментами. В большинстве случаев вам просто нужно будет включить только файлы DLL, которых нет в новой операционной системе Windows. Компания Nirsoft создала 3 информационных сайта, содержащих стандартный список файлов DLL по умолчанию, расположенных в каталоге system32 Windows XP, 7 и 8.
Файлы DLL представляют собой своего рода библиотеку, в которой есть разные типы кодов, которые могут использоваться одновременно разными программами. Как мы можем узнать и увидеть, какие файлы DLL используются программами на нашем ПК? Что ж, здесь мы поможем вам узнать, вы даже можете узнать, как запустить файл DLL как приложение Windows.
Прежде чем давать объяснение, следует подчеркнуть, что аббревиатура DLL происходит от библиотеки динамической компоновки на английском языке и представляет собой переведенную библиотеку динамической компоновки.
Программы, которые совместно используют коды, содержащиеся в файлах DLL, загружают эту информацию в память ЦП. Благодаря инструменту командной строки мы можем проверить, какие DLL-файлы используются. Мы также можем видеть, какие файлы запускает каждая программа.
Как узнать и посмотреть, какие файлы DLL используются программами на нашем ПК
Файлы DLL позволяют, среди прочего, оптимизировать эффективное использование памяти процессора. Разрешая повторное использование кода, он уменьшает место на жестком диске, необходимое для запуска одного и того же кода в нескольких программах.
В этом случае информация о запущенных библиотеках DLL может быть собрана из памяти. Кроме того, если он вам больше не нужен, вы можете удалить DLL-файл, используемый в Windows, всего за несколько шагов.
Чтобы получить доступ к этой информации, необходимо перейти в меню "Пуск" и нажать "Выполнить", чтобы получить доступ к инструменту командной строки. Когда откроется диалоговое окно, вы должны ввести буквы «cmd» (команда), чтобы дать «ввод» на «ОК».
При выполнении этого действия мы сможем получить доступ к диалоговому окну. Мы продолжаем вводить показанную команду, чтобы запросить информацию о файлах, которые наш компьютер запускает в данный момент в системе. Таким образом, все загруженные файлы DLL и запущенные приложения будут отображаться.
Какую команду использовать для поиска файлов DLL
Если мы хотим знать, какие файлы DLL загружаются конкретной программой, нам нужно немного расширить команду. Нам нужно ввести текст: tasklist /m/fi "imagename eq [имя программы]".
Как видите, в предыдущей команде имя программы выражения заключено в квадратные скобки.Это потому, что на самом деле между этими скобками мы должны написать название конкретной программы, которую мы хотим изучить.
Например, поместив: tasklist /m /fi "imagename eq winrare.exe", мы получим список файлов DLL, которые выполняются этим приложением.
Таким образом, мы всегда можем знать и видеть, какие файлы DLL используются программами на нашем ПК.
Знание о файлах DLL может помочь нам настроить наш ПК
Возможно, вы заметили, что при создании папки и ее настройке с помощью значка система Windows приводит нас к пути shell32.dll, представляющему собой динамическую библиотеку. Но это лишь одна из многих DLL, которые могут предоставить нам иконки. Есть и другие, которые даже содержат значки с гораздо более высоким разрешением.
Читайте также: