2010-02-15 2 views
2

Cela se produit lorsque j'essaie de compiler une bibliothèque de classes Windows Mobile, après avoir ajouté le fichier XMTA nécessaire pour fournir des attributs à mon composant personnalisé.genasm.exe (1): erreur Une erreur s'est produite lors de la finalisation du type. Référence d'objet non définie sur une instance d'un objet

J'ai cherché le net, et je pensais que j'avais trouvé une solution dans here mais après que je l'ai testé tout à fait la seule chose qu'il fait est de supprimer la génération de fichier XMTA.

Je suis à court d'options, car je ne comprends tout simplement pas pourquoi l'erreur se produit.

Tout le reste fonctionne très bien, et j'ai plusieurs autres fichiers XMTA dans le projet et chacun d'entre eux compile sans problème, juste ce nouveau je l'ai ajouté.

Quelqu'un peut-il faire la lumière?


Ce sont les paramètres et le journal exécution du genasm:

AsmmetaFile = ; 
KeyFile = ; 
NDPVersion = v3.5; 
PlatformFamilyName = PocketPC; 
PlatformID = 4118C335-430C-497f-BE48-11C3316B135E; 
ReferencePath = C:\Program Files\...\v3.5\WindowsCE\System.Core.dll; 
       C:\Program Files\...\v3.5\WindowsCE\System.Data.DataSetExtensions.dll; 
       C:\Program Files\...\v3.5\WindowsCE\System.Data.dll; 
       C:\Program Files\...\v3.5\WindowsCE\System.dll; 
       C:\Program Files\...\v3.5\WindowsCE\System.Drawing.dll; 
       C:\Program Files\...\v3.5\WindowsCE\System.Windows.Forms.dll; 
       C:\Program Files\...\v3.5\WindowsCE\System.Xml.dll; 
       C:\Program Files\...\v3.5\WindowsCE\System.Xml.Linq.dll; 
SourceAssembly = obj\Debug\PJonDevelopment.Mobile.Core.dll; 
XmlSource = Forms\OpenFileDialogEx.xmta; 

C:\Program Files\...\v3.5\Bin\GenAsm.exe 
    "C:\Users\Paulo Santos\...\PJonDevelopment.Mobile.dll" 
    -o "C:\Users\Paulo Santos\...\PJonDevelopment.Mobile.PocketPC.asmmeta.dll" 
    -x "C:\Users\Paulo Santos\...\OpenFileDialogEx.xmta" 
-xr "C:\Program Files\...\v3.5\WindowsCE\System.Core.dll" 
-xr "C:\Program Files\...\v3.5\WindowsCE\System.Data.DataSetExtensions.dll" 
-xr "C:\Program Files\...\v3.5\WindowsCE\System.Data.dll" 
-xr "C:\Program Files\...\v3.5\WindowsCE\System.dll" 
-xr "C:\Program Files\...\v3.5\WindowsCE\System.Drawing.dll" 
-xr "C:\Program Files\...\v3.5\WindowsCE\System.Windows.Forms.dll" 
-xr "C:\Program Files\...\v3.5\WindowsCE\System.Xml.dll" 
-xr "C:\Program Files\...\v3.5\WindowsCE\System.Xml.Linq.dll" 
-frameworkversion v3.5 
-platformfamily PocketPC 

error : 
    genasm.exe(1) : 
    There was an error finalizing type . 
    Object reference not set to an instance of an object. 

Répondre

3

Parce que le message d'erreur était très trompeuse, je ne pas trouvé la solution dans un premier temps.

Le problème est survenu parce que dans l'une de mes classes était l'héritage d'un ReadOnlyCollection<T> et ce n'est pas pris en charge par le genasm. Comme indiqué dans this Microsoft Forum Thread.

Donc, pour contourner ce problème, je me suis déplacé les classes qui ne nécessitaient pas le temps de conception attribue à un autre ensemble et les projets compilés très bien.

Questions connexes