Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Сборка общего доступа


Автор: kirillga 31.3.2008, 16:25
Просьба помоч в разборе GAC как я понимаю если зарегить свою сборку в GAC её можно будет 
подключить из любого проекта с помощью Add Reference на вкладке .NET это сборка должна отображаться????
Или после её регистрации её необходимо как то по иному подключать???

Всё что касаеться стронг нэйм и регистрации в GAC с помощью gacutil.exe я сделал теперь хочу разобраться что дальше помогите плс. smile 

Автор: mr.DUDA 31.3.2008, 19:06
Цитата(kirillga @  31.3.2008,  15:25 Найти цитируемый пост)
 если зарегить свою сборку в GAC её можно будет подключить из любого проекта с помощью Add Reference на вкладке .NET это сборка должна отображаться????

Нет, чтобы сборка была в том списке, надо править реестр, а в GAC её добавлять не обязательно.  Ключ реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders

Туда добавить свой путь, по аналогии с имеющимися.

Автор: kirillga 1.4.2008, 07:08
mr.DUDA СПАСИБО ЗА ПОДСКАЗКУ)))

А для чего тогда GAC нужен и что нам дает помещение сборок туда????

Автор: mr.DUDA 1.4.2008, 10:34
Из гака общие сборки подчитываются при загрузке приложения, в котором добавлен референс. Тот путь который в реестре, он только для visual studio. Чтобы добавить сборку в GAC, её надо подписать ключом и выполнить gacutil.exe /i имя_сборки.

Автор: kirillga 1.4.2008, 11:01
Тоесть правильно я понял если мы прописываем в реестре это только для отабражения в add reference но работать не будет пока в гак не добавим???

Автор: mr.DUDA 1.4.2008, 11:09
Цитата(kirillga @  1.4.2008,  10:01 Найти цитируемый пост)
Тоесть правильно я понял если мы прописываем в реестре это только для отабражения в add reference но работать не будет пока в гак не добавим???

Почти всё верно, точнее работать будет и без гак, если например подложить сборку в директорию приложения (тогда это будет приватная сборка).

Автор: kirillga 1.4.2008, 11:18
ну приватные там через add reference через brows добавлять, а общая сборка для чего используеться и когда??? И ещё вот например я сделал прогу с общей сборкой запуститься ли она надругом компе где нет этой сборки в гаке и не прописано в реестре??

Автор: kirillga 1.4.2008, 12:09
Я разобрался если сборку прописываем только в реестре тогда после компиляции эта сборка записываеться в Debag рядом с exe фалом)))) А если мы добавим его в гак этого не происходит следовательно на другом компе работать не будет без этой сборки))))

Автор: mr.DUDA 1.4.2008, 16:47
В случае shared-сборки придётся регистрировать её в GAC и на другом компе тоже. Смысл общих сборок в том, что несколько приложений могут их юзать, находясь по разным директориям и не зная друг о друге, и не обладая собственной копией сборки.

Автор: kirillga 2.4.2008, 07:11
 smile Спасибо за помощь))))

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)