Разрабатываю xxx.dll c COM-объектами, которая ссылается на другие сборки.
При регистрации xxx.dll на компе, где стоят другие версии сборок, regasm ругается.
Как это обойти?
Re: Как избавиться от зависимости от версии сборки в dll?
Здравствуйте, Алек, Вы писали:
А>Разрабатываю xxx.dll c COM-объектами, которая ссылается на другие сборки. А>При регистрации xxx.dll на компе, где стоят другие версии сборок, regasm ругается. А>Как это обойти?
Для начала, решите, что Вы хотите получить.
Если нужно, чтобы COM использовал последнюю версию сборки — просто удаляйте все старые перед регистрацией новой.
Если нужно, чтобы жили все одновременно — тогда меняйте guid COM-объекта, иначе как COM угадает, какую версию брать?
Re[2]: Как избавиться от зависимости от версии сборки в dll?
Здравствуйте, vmpire, Вы писали:
V>Для начала, решите, что Вы хотите получить.
Может я не достаточно хорошо объяснил...
Я разрабатываю x.dll, которая использует y.dll и z.dll версии 9.1.x.x.
Теперь я хочу установить x.dll на компьютер, где стоят y.dll и z.dll версии 9.3.x.x. Regasm говорит, что нету у.dll версии 9.1.x.x. Удалять старые версии y.dll и z.dll я не могу.
Re[3]: Как избавиться от зависимости от версии сборки в dll?
Здравствуйте, Алек, Вы писали:
А>Может я не достаточно хорошо объяснил... А>Я разрабатываю x.dll, которая использует y.dll и z.dll версии 9.1.x.x. А>Теперь я хочу установить x.dll на компьютер, где стоят y.dll и z.dll версии 9.3.x.x. Regasm говорит, что нету у.dll версии 9.1.x.x. Удалять старые версии y.dll и z.dll я не могу.
Попробуйте прописать <bindingRedirect> для y.dll и z.dll с версии 9.1.x.x на 9.3.x.x в конфиге приложения. Если не поможет — попробуйте прописать его в machine.config.
Re[4]: Как избавиться от зависимости от версии сборки в dll?
Здравствуйте, vmpire, Вы писали:
V>Попробуйте прописать <bindingRedirect> для y.dll и z.dll с версии 9.1.x.x на 9.3.x.x в конфиге приложения. Если не поможет — попробуйте прописать его в machine.config.
Написал свое приложение для регистрации x.dll, у которого указал <bindingRedirect>. Теперь COM-объекты из x.dll регистрируются. Но основное приложение, которое использует COM-объекты из x.dll не хочет запускать эти объекты. Основное приложение не является .Net приложением. Правка <bindingRedirect> в конфиге основного приложения и в mashine.config не помогает.
Re[4]: Как избавиться от зависимости от версии сборки в dll?
Здравствуйте, vmpire, Вы писали:
V>Попробуйте прописать <bindingRedirect> для y.dll и z.dll с версии 9.1.x.x на 9.3.x.x в конфиге приложения. Если не поможет — попробуйте прописать его в machine.config.