MSVCR80.DLL отсутствует.Что я должен установить или что я должен обмануть в конфигурации проекта c ++ - PullRequest
0 голосов
/ 20 октября 2010

У меня есть устаревшая библиотека проекта msvs2005 c ++ (dll). Я открыл проект на рабочей станции WindowsXP с установленным msvs2008 и скомпилированным кодом. Но когда я пытаюсь использовать его с исполняемым модулем, я наблюдаю «my-library.dll или одна из его зависимостей не найдена».

Зависимость Уокер говорит мне, что MSVCP80.DLL, MSVCR80.DLL, MSVCR90D.DLL отсутствуют. MSJAVA.DLL также отсутствует. Я установил распространяемый пакет Visual C ++ 2008, но проблема остается. Необходимые библиотеки не были помещены в папку System32.

Что мне установить на рабочую станцию ​​или что нужно сделать в конфигурации проекта, чтобы избежать этой проблемы?

Заранее спасибо!

Ответы [ 3 ]

5 голосов
/ 20 октября 2010

Будучи повторной жертвой собраний бок о бок с тех пор, как этот ужасный ужас начался несколько лет назад, мне приходилось сталкиваться с этим на регулярной основе.@Frederic прав в том, что установка распространяемого с помощью установщика идеальна, но у вас могут быть и другие проблемы.

Тем не менее, если у вас есть доступ к машине с Vista / Windows7, вы можете использовать sxstrace.Это не интуитивно понятный инструмент для отслеживания этих проблем.Вы можете использовать информацию, сгенерированную с помощью этого инструмента, чтобы точно определить, что ищет ваше приложение.

  1. Запустите это в командной строке

    sxstrace.exe -logfile: sxstrace.st

  2. Теперь запустите приложение и получите ошибку

  3. Теперь нажмите Enter, чтобы остановить трассировку
  4. Теперь введите:

    sxstrace parse -logfile: sxstrace.st -outfile: sxstrace.txt

  5. Теперь вы можете посмотреть на выходной файл и увидеть, что именно произошло, когдаприложение было запущено.

Источник: http://blogs.msdn.com/b/junfeng/archive/2006/04/14/576314.aspx

Кроме того, вы можете взглянуть на эту статью о msdn, поскольку она помогает в устранении следующих проблем: http://msdn.microsoft.com/en-us/library/ms235342(VS.80).aspx

3 голосов
/ 20 октября 2010

Вам следует установить либо Распространяемый пакет Visual C ++ 2005 , либо Распространяемый пакет Visual C ++ 2005 SP1 , поскольку ваш устаревший код был скомпилирован с Visual Studio 2005 (8.0).

Используйте распространяемый пакет SP1, если код был скомпилирован с VS 2005 SP1.

2 голосов
/ 20 октября 2010

установлен 2008 распространяемый пакет Visual C ++, но проблема остается.

Откуда вы взяли редист?

Существует множество версий Redist, наиболее подходящей из которых является MSVC.Однако произошло множество событий, таких как обновления безопасности ATL, и поэтому вам нужно посмотреть информацию о номере версии, которая будет присутствовать в манифесте, а затем найти правильную (или более новую) версию для установки.*

Также позаботьтесь о том, чтобы вам понадобился повторный отладочный файл, если вы хотите использовать отладочную сборку библиотеки на другом компьютере.

...