Запуск другой версии Unity - PullRequest
1 голос
/ 07 октября 2010

Можно ли запускать разные версии Unity в приложении?

Я ссылаюсь на приложение, которое использует старую версию Unity и текущую версию Unity, я использую самую новую версию.

Я получаю это предупреждение .

Я попробовал то, что предложили посты, но не получилось.

Как заставить это работать?

Спасибо.

1 Ответ

1 голос
/ 24 июня 2011

Предупреждение во время компиляции - это просто предупреждение. Вы можете игнорировать это, если у вас есть обе версии библиотеки Unity DLL, доступные для приложения. Вы можете добиться этого, отредактировав свой App.config, чтобы он выглядел примерно так

<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>

Это просто псевдоконфигурация, но вы можете видеть, что в каталоге bin моего приложения у меня будет подкаталог для обеих версий Unity. Этот конфиг в основном говорит среде выполнения .net: «Когда вам нужна версия 1 или 2 единицы, вы можете получить их из этих подкаталогов».

Конечно, СЛЕДУЕТ ли вам делать это, это другая история. Если в вашем приложении есть какой-либо свободный конфиг (например, xml), который ссылается на типы в DLL-библиотеке Unity - эти «ссылки» должны будут указывать строгое-строго-имя-версию Unity DLL, в противном случае вы получите ошибки во время выполнения.

...