Вопрос

Я получаю эту ошибку при запуске приложения .net 2.0 на урезанной виртуальной машине XP SP3 x86, даже если среда выполнения .net 2.0 уже установлена ​​до установки приложения.

Exception Source:      mscorlib
Exception Type:        System.IO.FileNotFoundException
Exception Message:     Could not load file or assembly 'WindowsBase, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
Exception Target Site: GetExportedTypes

---- Stack Trace ----
   System.Reflection.Assembly.GetExportedTypes()
       XSplit.Core.exe: N 00000
   XSplit.Core.Capture.ChannelAddinManager.#Dm( As String)
       XSplit.Core.exe: N 00105
   XSplit.Core.Capture.ChannelAddinManager.#Cm()
       XSplit.Core.exe: N 00265
   XSplit.Core.Capture.ChannelAddinManager.Init(path As String, host As IAddinHost)
       XSplit.Core.exe: N 00104
   XSplit.Core.frmLogin.InitializeAddinComponent()
       XSplit.Core.exe: N 00534
   XSplit.Core.frmLogin..ctor(args As String[])
       XSplit.Core.exe: N 01263

Связанный код, который порождает эту ошибку, таков:

var assembly = Assembly.LoadFrom(dllFile);
var assemblyTypes = assembly.GetExportedTypes();

Даже после установки framework 2.0 sp2 эта ошибка по-прежнему выдается.

Ребята, вы хоть понимаете, почему это так?

Это было полезно?

Решение

Сборка WindowsBase стала доступна только в версии .NET 3.0.Если вы хотите запустить этот код без исключений, вам необходимо установить на компьютер версию 3.0, версии 2.0 недостаточно.Проверьте параметры сборки проекта надстройки и убедитесь, что он не ссылается ни на какие сборки WPF.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top