![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| firstone |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 116 Регистрация: 25.9.2007 Где: Кровью залитая Св ятая Земля Репутация: 1 Всего: 7 |
Приветствую, господа!
У нас есть производственная проблема: Программист Х написал библиотеку A версии 1. Программист Y написал приложение, в референсах которого библиотека A версии 1. Программист X написал следующую версию библиотеки A - 2 В некоторых случаях программисту Y необходимо обновить свой референс. В других же оставить старую версию. Я знаю о наличии такой штуковины, как ГАК. Но подходит ли она для разработки ПО? Можно ли сделать референс на DLL из ГАКа? Какой-нибудь другой версии, а не самой последней? Интересен еще сам способ обновления ГАКов на всех компьютерах в локальной сети при выходе в свет новой версии библиотеки. Как это все работает у вас в фирмах? --------------------
В программировании я конфуцианец. В жизни я либерал-демократ. В душе я буддист.Добавлено через 1 минуту и 9 секундА на самом деле я лентяй. |
|||
|
||||
| sobik |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 63 Регистрация: 21.3.2008 Где: Киев, Украина. Репутация: нет Всего: 1 |
Вкратце:
Для установки сборок(библиотек) в ГАК используют утилиту GACUtil.exe. Если вы обратитесь к какой-либо сборке, то в первую очередь(после каталогов и подкаталогов)приложение ищет сборку в ГАКЕ. Поэтому ничего в приложение не нада добавлять, само должно найти(но, правда, у меня на работе был случай, что сборка была не видна,и пришлось вручную прикреплять, причины незнаю). Вообще по этому поводу неплохо прочитать третью главу книги Д.Рихтера "СLR via C#". |
|||
|
||||
| firstone |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 116 Регистрация: 25.9.2007 Где: Кровью залитая Св ятая Земля Репутация: 1 Всего: 7 |
Здравствуйте, sobik и спасибо за ответ.
Вопрос не в том, как пользоваться этими библиотеками приложениям, а как пользоваться библиотеками из ГАКа при разработке ПО. И как этот ГАК обновлять. Т.е. пользование ГАКом с т.з. разработчика. --------------------
В программировании я конфуцианец. В жизни я либерал-демократ. В душе я буддист.Добавлено через 1 минуту и 9 секундА на самом деле я лентяй. |
|||
|
||||
| sobik |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 63 Регистрация: 21.3.2008 Где: Киев, Украина. Репутация: нет Всего: 1 |
Если вопрос заключаеться в том, чем могут быть полезны библиотеки с ГАКА, то полного ответа я Вам дать не могу. Если есть время - ILDasm.exe и вперед, к освоению новых библиотек(думаю, вряд ли это Вам понадобиться). Насчет обновления ГАКА - то тут я знаю только о GACUtil.exe, возможно есть еще какие-то способы. Потом, если у вас юзаються обе сборки(точнее, обе версии), то они обе должны быть в ГАКЕ, во избежание "хаоса ДЛЛ".
|
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 22 Всего: 118 |
две версии библиотек можно использовать и так (а в бой ставить более новую версию их 2-х). при этом референсы обновлять не нужно (.net среда считает что версии отличающиеся в 2-х последних поициях интерфейсно и логически совместимы, и выберет большую (при наличии 2-х сборок на машине)). Если же программисты меняют сильно интерфейс, то они должны сделать НОВУЮ библиотеку (изменив одну из 2-х старших позиций). и поставляться должны тогда две сборки (двух версий). ибо они несовместимы между собой интерфейсно, логически или по поведнию.
по поводу расположения сборок : .net пофигу где они лежат (в плане например у разработчика в ебенях, а в бою рядом). используется lazy load, и загружается не по полному пути, а по имени сборки и версии (если это частная сборка) и публичному ключу(если это публичная сборка). -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |