2010-11-18 18 views
1

J'essaye d'obtenir ILMerge fonctionnant avec une bibliothèque de classe de SL 4 (aucun xaml).ILMerge pour Silverlight 4

J'ai une tâche de post de construction:

<Target Name="AfterBuild"> 
    <CreateItem Condition="'%(Extension)'=='.dll'" Include="@(ReferenceCopyLocalPaths)"> 
     <Output TaskParameter="Include" ItemName="IlmergeAssemblies" /> 
    </CreateItem> 
    <Exec Command="&quot;$..\..\..\References\Ilmerge.exe&quot; /ndebug /targetplatform:v4,&quot;C:\Program Files (x86)\Microsoft Silverlight\4.0.50917.0&quot; /internalize:&quot;$..\..\ILMergeInclude.txt&quot; /keyfile:&quot;$..\..\..\References\StrongName.pfx&quot; /out:&quot;@(MainAssembly)&quot; &quot;@(IntermediateAssembly)&quot; @(IlmergeAssemblies->'&quot;%(FullPath)&quot;', ' ')" /> 
    <Delete Files="@(ReferenceCopyLocalPaths->'$(OutDir)%(DestinationSubDirectory)%(Filename)%(Extension)')" /> 
    </Target> 

Au début, je suis une erreur au sujet d'une référence d'assemblage non résolues à System.Core, mais je lis d'avoir à ajouter le commutateur /targetPlatform. Cela s'est débarrassé de cette erreur, mais maintenant avec la tâche ci-dessus, je reçois:

An exception occurred during merging: 
    Unable to load DLL 'mscorsn.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E) 

Quelqu'un a de la chance avec cela?

Merci.

Répondre

2

La commutation pour utiliser un snk au lieu d'un pfx a résolu le problème. Bizarre .... Merci M Barnett!