У меня есть большой проект веб-приложений, включая код на C#, C++ и C, со многими ссылками (ссылки на проекты, ссылки на DLL), и я делаю сборку релиза. Тестирование моей программы на виртуальной машине, я получаю следующее сообщение об ошибке:Как я могу определить, что ссылается на Microsoft.VC90.DebugCRT?
Could not load file or assembly <MyAssembly.DLL> or one of its dependencies.
The application has failed to start because its side-by-side configuration is incorrect.
Please see the application event log or use the command-line sxstrace.exe tool for more detail.
Так я проверить журнал событий, и я нахожу это:
Activation context generation failed for "C:\Windows\Microsoft.NET\Framework\...\MyAssembly.DLL".
Dependent Assembly Microsoft.VC90.DebugCRT,processorArchitecture="x86",
publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"
could not be found. Please use sxstrace.exe for detailed diagnosis.
Я также использовал sxstrace как было предложено, и просто в конечном итоге с файл, который гласит:
ERROR: Cannot resolve reference Microsoft.VC90.DebugCRT,processorArchitecture="x86",
publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"
Я проверил конфигурацию для своих проектов, и все они настроены на выпуск. Почему MyAssembly ссылается на Microsoft.VC90.DebugCRT? И как я могу это исправить?
Обратите внимание, что я установил на моей виртуальной машине x86 и x64 MSVC++ распространяемые ресурсы.
EDIT Я побежал зависимость ходок на MyAssembly.dll, и я получил кучу записей, которые говорят «Ошибка открытия файла Система не может найти указанный файл.»:
API-MS-WIN-... (4x)
EXT-MS-WIN-...
MSVCM90D.DLL
MSVCR90.DLL
MSVCR90D.DLL
IESHIMS.DLL
MFPLAT.DLL
SETTINGSYNPOLICY.DLL
WLANAPI.DLL
зависимый ходок? http://www.dependencywalker.com/ –
У вас есть код C или C++, который был построен с VS2008 в конфигурации Debug. Это происходит, если вы действительно не знаете, откуда пришли ссылки .lib-файлов. Разумеется, мы этого не делаем. Вы можете посмотреть файлы .lib с шестнадцатеричным просмотром и найти строку, чтобы сузить ее. –
@DmitriSosnik Я обновил вопрос с выходом зависит. – user145400