У меня есть приложение C # WPF, созданное в VS 2010 с целевой платформой x86.Этот exe-файл вызывает управляемую DLL с целевой платформой ANYCPU.Управляемая DLL имеет ссылку на C ++ DLL, которая компилируется с опцией Common Language Runtime Support (/ clr).
В .NET 3.5 приложение отлично работает на любой ОС.Он также отлично работает на Win 7, как на 32-битной, так и на 64-битной.
Теперь, когда я преобразовал приложение и его библиотеки DLL в целевой .NET 4. Если он работает в .NET менее 4,выдает ошибку, что требуется .NET 4, что является ожидаемым результатом.
Преобразованное приложение прекрасно работает в моей системе разработки и в любой системе, в которой есть .NET 4 + .NET 3.5.Все идет нормально!
Однако в системах с ТОЛЬКО .NET 4 (т.е. Win 8) или win 7 без .NET 3.5 я получаю сообщение об ошибке: Не удалось загрузить файл или сборку 'x' или одну из ее зависимостей.Указанный модуль не может быть найден.
'x' - это C ++ dll, скомпилированная с опцией Language Runtime Support (/ clr).
Короче говоря, проблема возникает только в системах с .NET 4.
Любой совет будет оценен.Спасибо, - Кам