почему dumpbin.exe не может сбросить все зависимости (IPP) с параметром / DEPENDENTS? - PullRequest
0 голосов
/ 11 марта 2020

Сначала я сбросил зависимости ImageTestCOM.dll с dumpbin.exe. Затем я подготовил все библиотеки в списке результатов с ImageTestCOM.dll вместе в одной папке. Но регистрация (regsvr32) ImageTestCOM.dll потерпел неудачу, поскольку пропустил четыре библиотеки IPP. Эти четыре зависимые от IPP библиотеки находятся позже в Справочнике разработчика IPP с функциями IPP, используемыми в ImageTestCOM.dll. Вот результат зависимого дампа ImageTestCOM.dll.

"C:\VS2019\VC\Tools\MSVC\14.24.28314\bin\Hostx64\x64\dumpbin.exe" /DEPENDENTS ImageComprehensionCOM.dll
Microsoft (R) COFF/PE Dumper Version 14.24.28314.0
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file ImageTestCOM.dll

File Type: DLL

  Image has the following dependencies:

    ippi-8.0.dll
    ipps-8.0.dll
    ippcv-8.0.dll
    opencv_core2410.dll
    opencv_imgproc2410.dll
    opencv_highgui2410.dll
    mfc140.dll
    KERNEL32.dll
    USER32.dll
    ADVAPI32.dll
    ole32.dll
    OLEAUT32.dll
    MSVCP140.dll
    VCRUNTIME140.dll
    VCRUNTIME140_1.dll
    api-ms-win-crt-runtime-l1-1-0.dll
    api-ms-win-crt-string-l1-1-0.dll
    api-ms-win-crt-stdio-l1-1-0.dll
    api-ms-win-crt-filesystem-l1-1-0.dll
    api-ms-win-crt-convert-l1-1-0.dll
    api-ms-win-crt-math-l1-1-0.dll
    api-ms-win-crt-heap-l1-1-0.dll
    api-ms-win-crt-utility-l1-1-0.dll
    api-ms-win-crt-time-l1-1-0.dll
    api-ms-win-crt-multibyte-l1-1-0.dll

  Summary

       25000 .data

И затем я выгрузил ippi-8.0.dll, ipps-8.0.dll и ippcv-8.0.dll по отдельности. И я могу только знать, что все они зависят от ippcore-8.0.dll. Поэтому я все еще не могу найти другие 3 зависимости IPP (ippcvmx-8.0.dll, ippiu8-8.0.dll и ippsu8-8.0.dll). Отсюда я нашел описание параметра / DEPENDENTS (https://docs.microsoft.com/en-us/cpp/build/reference/dependents?view=vs-2019). Оно говорит, что: «Сбрасывает имена библиотек DLL, из которых импортируется изображение. Вы можете использовать список, чтобы определить, какие библиотеки DLL следует распространять. с вашим приложением или найдите имя отсутствующей зависимости. " Означает ли это, что он может сбрасывать только те, которые установлены в Linker-> Input для свойств проекта? Если да, как я могу узнать, какие зависимые библиотеки загружаются динамически с помощью LoadLibrary?
Я попытался сбросить здесь Зависимости инструмента (https://github.com/lucasg/Dependencies). Но все еще не могу найти эти три недостающие зависимости IPP. Заранее спасибо .:)

...