2010-10-08 5 views
1

Je reçois cette erreur lors de l'exécution d'une application .net 2.0 sur une machine virtuelle XP SP3 x86 dépouillée, même si l'environnement d'exécution du framework .net 2.0 a déjà été installé avant l'installation l'application.FileNotFoundException levée lors de l'appel de Assembly.GetExportedTypes()

 
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 

Le code lié qui engendre cette erreur est ce

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

Même après l'installation de framework 2.0 sp2, cette erreur est toujours levée.

Vous avez la moindre idée de pourquoi c'est?

Répondre

2

L'assembly WindowsBase n'est pas devenu disponible jusqu'à .NET 3.0. Si vous voulez exécuter ce code sans exception, vous devrez installer 3.0 sur la machine, 2.0 n'est pas assez bon. Vérifiez les paramètres de génération du projet complémentaire et assurez-vous qu'il ne fait référence à aucun assembly WPF.

+0

La cible de génération est .net 2.0 et aucun des assemblages référencés n'est WPF. Nous sommes donc déconcertés quant à la raison pour laquelle cette erreur est renvoyée. – sjlewis

Questions connexes