none
Программыно использовать dll по выбору RRS feed

  • Вопрос

  • Добрый день!

    Есть несколько разных компьютеров с разными версиями одной и той-же сборки(dll) и есть dll для разработчика (эмулятор, т.е. еще одна версия)

    Компьютер1 - sample.dll (v1.0) 

    Компьютер2 - sample.dll (v1.5)

    Компьютер3 - sample.dll (vDEV)

    У всех них разные идентификаторы, .т.е. запустить программу не откомпилировав приложение для конкретной версии dll не получится.

    Приходится каждый раз регистрировать нужную с помощью regsrv32 используемой на заданном  компьютере, а затем компилировать.

    Можно ли как-то уйти от этих регистраций через regsrv32 ? Методы и прочее, используемые в программе одинаковые, различия только в версиях dll.

    4 июня 2013 г. 15:40

Ответы

  • Если вы о .NET, то достаточно будет изменить младшие цифры в номере сборок в конфигурации, тогда проблем не будет.

    Скажем 1.0.0.1, 1.0.0.15 и т.д. Но только не старшие номера.

    <?xml version ="1.0"?>
    <configuration>
    <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity name="interfaces" culture="neutral" publicKeyToken="null"/>
            <bindingRedirect oldVersion="1.0.0.0-1.0.0.1" newVersion="1.0.0.1"/>
        </dependentAssembly>
        </assemblyBinding>
    </runtime>
    </configuration>

    Модератор

Все ответы

  • Если вы о .NET, то достаточно будет изменить младшие цифры в номере сборок в конфигурации, тогда проблем не будет.

    Скажем 1.0.0.1, 1.0.0.15 и т.д. Но только не старшие номера.

    <?xml version ="1.0"?>
    <configuration>
    <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity name="interfaces" culture="neutral" publicKeyToken="null"/>
            <bindingRedirect oldVersion="1.0.0.0-1.0.0.1" newVersion="1.0.0.1"/>
        </dependentAssembly>
        </assemblyBinding>
    </runtime>
    </configuration>

    Модератор
  • Пардон, самое главное не написал.

    C# (wpf, .net 4.5) у меня и dll готовые, сторонние, компилировать dll возможности нет.

    Идея ваша понятна, посмотрю может прокатит.


    • Изменено serge73 8 июня 2013 г. 4:42
    5 июня 2013 г. 12:30