2009-08-10 6 views
0

J'ai reçu un projet complet de vs2005 de notre sous-traitant, qui dépend de plusieurs de leurs autres projets. Je n'ai pas obtenu les fichiers sources de ces projets, mais j'ai leurs dll dans le dossier bin/debug (appelons les a.dll et b.dll). J'ai copié ces DLLs dans un dossier \ lib, et j'ai changé les références pour pointer là. Le problème que j'ai maintenant est que a.dll et b.dll dépendent d'une version spécifique d'un produit que nous développons sur, et notre système ici a une version différente installée.modification d'un manifeste dll

Existe-t-il un moyen assez simple pour ouvrir a.dll et b.dll et modifier leur manifeste pour cibler notre version du produit? Ou mieux encore - ne les faites pas en fonction d'une version spécifique?

Répondre

0

Pouvez-vous utiliser Assembly Binding Redirection pour que les versions requises chargent réellement les versions que vous avez?

par exemple. dans votre fichier app.settings, avoir quelque chose comme ceci:

<configuration> 
    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
     <assemblyIdentity name="myAssembly" 
          publicKeyToken="32ab4ba45e0a69a1" 
          culture="en-us" /> 
     <bindingRedirect oldVersion="1.0.0.0" 
         newVersion="2.0.0.0"/> 
     </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
</configuration> 
+0

Cela ne semble pas fonctionner. Est-il supposé fonctionner même quand mon projet dépend de a.dll, qui dépend d'une version spécifique de (Admettons-le ...) - ESRI.ArcGIS.System? Lorsque j'ajoute cette section au fichier app.config de mon propre projet, cela devrait-il affecter ce que a.dll recherche pendant la compilation? –

+0

Et une autre chose - a.dll dépend de la version 9.3. J'ai la version 9.2 - puis-je rediriger comme ça vers une version plus basse? –

+0

Oui, il est possible que ce problème affecte le fichier a.dll. Cependant, cela semble être une très mauvaise idée d'essayer d'utiliser une version * inférieure *. Et s'il utilise de nouvelles fonctionnalités dans 9.3? –

Questions connexes