Невозможно запустить Visual Studio 2008 DLL на Modern Windows - PullRequest
1 голос
/ 23 января 2020

У меня есть dll, которую собирает Visual Studio 2008, и я хочу использовать ее в моей сборке приложений Visual Studio 2019. Но когда я связываю DLL с моим приложением, я не смог запустить приложение из-за того, что старая dll требует файлы msvcp80.dll и msvcr80.dll. У меня есть много сред выполнения Visual Studio на моем Windows, но в любом случае эта DLL не удалось загрузить. Возможно, проблема в том, что у этой старой библиотеки есть внешний файл манифеста, который не подходит / не соответствует моему современному Windows серверу. Есть ли способ заставить эту старую DLL работать? PS: у меня нет исходного кода этой DLL. Манифест:

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
  <assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
    <dependency>
       <dependentAssembly>
         <assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50727.4053' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
</dependentAssembly>

1 Ответ

3 голосов
/ 23 января 2020

Для запуска исполняемых файлов (включая DLL), созданных с помощью компилятора C / C ++ в Visual Studio 2008 (на компьютере, на котором не установлен VS-2008), необходимо установить распространяемый V-1015 * -2008. пакет.

Это бесплатно, может распространяться без лицензии с вашими приложениями и устанавливает необходимые библиотеки времени выполнения, которые отсутствуют в вашем P C.

Программа установки можно загрузить и / или установить из здесь .

РЕДАКТИРОВАТЬ: После комментария, опубликованного Хансом Пассантом, кажется, что вам на самом деле нужна V C -2005 Распространяется для установки msvcr80.dll и аналогичных библиотек RT (номера версий могут сбивать с толку).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...