Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.136.154.103] |
|
Сообщ.
#1
,
|
|
|
Вопрос: должны ли быть GUID'ы компонент уникальными в "глобальном" пространстве, или достаточной будет их уникальность в области одного продукта или upgrade линейки?
|
Сообщ.
#2
,
|
|
|
Гм... ну и задачки у тебя
Думаю, что достаточно уникальности в области одного продукта. А вообще это же очень легко провирить Ты вот только скажи, тебе это зачем? |
Сообщ.
#3
,
|
|
|
А ты хочешь чтоб у тебя GUID для компонент в разных продуктах были одинаковые?
|
Сообщ.
#4
,
|
|
|
seryal
У меня здоровый проект, из которого собираются два продукта, отличающиеся, фактически, лишь локализацией и именем компании/продукта. Дерево компонент же у них одинаковое. Однако, являясь логически разными продуктами, они должны корректно работать при их одновременной установке на один комп. Не то чтобы я хотел чтобы у меня GUID в разных продуктах были одинаковыми, но мне было бы так легче. Хочу узнать насколько это корректно/некорректно. |
Сообщ.
#5
,
|
|
|
Ну два варианта предпочтительно оба сделать . Сам не делал, не приходилось.
1. чтение MSDN про компоненты и т.д. 2. Эксперимент на пустом проекте. (на пустом потому, что так быстрее и надежней). По 1 пункту все понятно. По 2-му пункту, создать два пустых проекта в оба добавить файл(ы) с одинаковым GUID у компонента описывающего файл(ы) (файлы с ключом сделать) установка в разные места, расшареные не расшареные файлы, так же желательно сделать записи в реест, установка ярлыков и т.д. Затем поустанавливать + поудалять + попереустанавливать оба продукта. После каждого действия смотреть как ведут себя файлы/ярлыки/записи в реестре и т.д., с одинаковым GUID у компонента, я думаю такой эксперимент все твои вопросы раскроет. Вообщем, вот пища для размышлений. Интересно было бы услышать про результаты экспериментов. |
Сообщ.
#6
,
|
|
|
Вопрос отпал:
http://www.osp.ru/cw/2004/04/72875/ Цитата Служба Windows Installer отслеживает все изменения, вносимые в систему в процессе установки компонентов. Если один и тот же компонент используется несколькими приложениями, это отражается в соответствующем счетчике. Кроме того, каждому компоненту назначается уникальный глобальный идентификатор (GUID), а также собственный ключ реестра KeyPath. Отслеживая ссылки на компоненты, а не на отдельные ресурсы, Windows Installer может контролировать все совместно используемые ресурсы, а не только файлы. Библиотеки DLL и другие ресурсы удаляются только при удалении последнего компонента, их использующего. |