2010-10-06 20 views
1

Est-il possible d'exécuter différentes versions de Unity dans une application?Exécution Différentes versions de Unity

Je référence une application qui utilise une ancienne version de l'unité et la version actuelle de l'unité en utilisant la dernière version. Je reçois ce warning.

J'ai essayé ce que les messages ont suggéré mais n'ont pas fonctionné.

Comment ça marche?

Arbres.

+0

Voulez-vous dire que vous voulez utiliser les deux versions dans la même application? – jmservera

+0

oui. c'est ce que je veux dire. – DarthVader

Répondre

1

L'avertissement de la compilation est juste cela, un avertissement. Vous pouvez l'ignorer tant que les deux versions de la DLL Unity sont disponibles pour l'application. Vous pouvez y parvenir en éditant votre App.config pour ressembler à quelque chose comme ça

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
    <dependentAssembly> 
     <assemblyIdentity name="Unity" publicKeyToken="605f591b87e816bd"/> 
     <codeBase version="1.0.0.0" href="./v1/Unity.dll"/> 
     <codeBase version="2.0.0.0" href="./v2/Unity.dll"/> 
    </dependentAssembly> 
    </assemblyBinding> 
</runtime> 

Ceci est juste pseudo-config, mais vous pouvez voir que dans le répertoire mes applications bin, je vais avoir un sous-répertoire pour les deux versions de Unity. Cette config dit fondamentalement au .net runtime, "Quand vous avez besoin de la version 1, ou 2 de l'unité, vous pouvez les obtenir de ces sous-répertoires".

Bien sûr, que vous fassiez ou non cette opération est une autre histoire. Si vous avez une configuration lâche (comme xml) dans votre application, quels types de référence dans la DLL Unity - ces 'références' devront spécifier le nom fort qualifié de la DLL Unity, sinon vous obtiendrez erreurs d'exécution.