DLL не найдена ошибка после публикации в VS2015 - tidy.x64.dll

У меня есть проблема, с которой я борюсь с незапамятных времен. Я почти перепробовал все, что смог, но безуспешно. Чтобы не скрывать, я не эксперт по C#, но я использую, чтобы учиться.

Я использую TidyHTML в проекте, чтобы исправить некоторые поврежденные HTML из редактора. Программное обеспечение написано на C#, .net 4.6. Публикуем на FTP-сервере (в один клик)

Я начал с TidyHtml5ManagedRepack и TidyHtml5Managed из nuget. Раньше я компилировал 32bit. Когда я попытался перейти на 64-битную версию, я больше не мог переустанавливать TidyHtml5ManagedRepack из nuget. Поэтому я установил его вручную (ссылка).

На моей машине разработки (Win7 с 64-битной) все хорошо, когда я компилирую 64-битную или 32-битную.

TidyHtml5Managed.dll находится в "References-folder" и добавлен в "References". tidy.x86.dll и tidy.x64.dll находятся в корневой папке проектов, и во время выпуска они были скопированы.

Это работает на моей машине разработки И на клиентских машинах Windows 7.

Когда я пытаюсь установить его на Windows 10 64 бит (установка работает хорошо и программное обеспечение запускается), я получаю эту ошибку для x64 компиляции:

System.DllNotFoundException: Умирает DLL "tidy.x64.dll": Das angegebene Modul wurde nicht gefunden. (Ausnahme von HRESULT: 0x8007007E) Канн Нихт Геладен Верден.

Но dll существует в корневой папке. Я также попытался скопировать его в папку Windows и другую папку, откуда он мог быть загружен. Может быть, поставленный x64-dll не совместим с win10? Это возможно?

Я попытался также использовать Tidy DLL для 64-битной отсюда; http://binaries.html-tidy.org/. Просто переименуйте его в tidy.x64.dll, переименовав в папку root-apps на компьютере клинета (win10). Та же ошибка

У кого-нибудь есть идея или предлагаемая настройка для этой проблемы? Я хочу использовать мое программное обеспечение в 64-битной с Tidy.

0 ответов

@HansPassant спасибо за ваш комментарий. Моим решением была простая установка распространяемого пакета Visual C++ 2010 (x86) в Windows ( https://www.microsoft.com/en-au/download/details.aspx?id=5555).

Другой вариант, как говорит Ханс, - это включить msvcr100.dll в ваш исполняемый файл, и тогда вам не понадобится установленный распространяемый пакет Visual C++ 2010. Но убедитесь, что это правильный файл msvcr100.dll. Чтобы убедиться, что у вас есть правильный, сначала установите распространяемый пакет Visual C++ 2010, загрузите его из C:\Windows\SysWOW64 или C:\Windows\system32, затем вы можете снова удалить распространяемый пакет Visual C++ 2010.

Другие вопросы по тегам