msvcp90d.dll отсутствует msvcr90d.dll - PullRequest
0 голосов
/ 03 августа 2010

У меня был проект DLL на одной машине, и я скопировал его на другую с недавно установленной VS2008.Проект строится, но я не могу его отладить.Зависимость Уокер показывает, что моя DLL видит msvcr90d.dll, но msvcp90d.dll не видит ту же DLL .Но если я открою msvcp90d.dll в отдельном окне, то msvcr90d.dll будет виден в msvcp90d.dll.Это, очевидно, некоторая проблема SxS, но я не знаю, как ее решить.Я попробовал несколько предложенных исправлений, обнаруживших поиск в Google:

  • отключить инкрементное связывание,
  • удалить, а затем включить сборку манифеста
  • удалить папку настроек из My Documents \ Visual Studio 2008

Ни одна из них не работает.Ситуация одинакова в обеих сборках Debug и Release.Помогите!

Ответы [ 2 ]

0 голосов
/ 31 августа 2010

Я скопировал последний проект на компьютер, на котором обнаружена проблема, и оказалось, что проблемы в конце концов нет.Dependancy Walker по-прежнему показывает те же желтые значки, что и раньше, но последний проект может быть отлажен просто отлично.Очевидно, проблема была в моем коде, возможно, несоответствие сигнатуры функции между объявлением C # и реальной реализацией DLL.

0 голосов
/ 12 августа 2010

Вы установили пакет обновления для VS 2008?

Вы уверены, что это причина, по которой вы не можете отлаживать? Использует ли ваша dll что-нибудь в библиотеке c ++ (msvcp90d.dll), которая зависит от библиотеки C (msvcr90d.dll)? Если ничего не нужно, он не будет связывать ненужный код.

Вы явно игнорировали эту библиотеку в настройках компоновщика?

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