Страницы

Поиск по вопросам

суббота, 4 января 2020 г.

Программа “Не видит” dll

#c_sharp #visual_studio #visual_cpp #dll


Приложение, написанное на C# и dll на C++/CLI. dll-ка подключена к проекту на C#
через references.  В коде вызываются методы классов объявленных в dll'ке.
На моём компе всё работает. На компе коллег так же (у всех примерно одинаковый конфиг:
x64 Core i3-i5 Win8.1-10) А на удалённой машине (Atom 1.5 Win7 sp1 x86) пишет 


  Не удалось загрузить файл или сборку "WinPrint.dll" либо одну из их зависимостей.
Не найден указанный модуль


Файл dll лежит в папке с exeшником. В свойствах проекта для данной dll стоит "копировать
локально". Все проекты компилируются под x86. VisualStudio 2015

Причём что, запускаю на своём компе regsvr32 и регаю dll-видит, но говорит что неверный
формат (что корректно) а на удалённой машине пишет 


  Не найден указанный модуль


Почему это происходит и как это исправить? 
    


Ответы

Ответ 1



Возможные причины: 1) Разная разрядность ОС и конфигурация билда. 2) Зависимости .dll, у меня было нечто подобное, отсутствовала зависимость, но p\invoke .NET-а долбал сообщение об ошибке что не видит подключаемую .dll, а не ее зависимость. Советую на удаленном ПК проверить зависимости нативной .dll утилитой Dependency Walker.

Комментариев нет:

Отправить комментарий