На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА · FAQ Inno Setup
Пожалуйста, выделяйте текст инсталлятора написанного на Inno Setup тегом [сode=ins] ... [/сode]. Для этого используйте кнопку [code=ins] в форме ответа или комбобокс, если нужно вставить код из другой программы.


Обязательно указывать:

  • Программу, используемую для создания инсталлятора.



Если в ходе решения проблемы возникли дополнительные вопросы, по возможности задаем их в той же теме.


Выразить свое отношение к модераторам раздела можно здесь: Profi, Fester
Модераторы: Fester, Profi
  
> MSI :: Component :: GUID, условия уникальности
    Вопрос: должны ли быть GUID'ы компонент уникальными в "глобальном" пространстве, или достаточной будет их уникальность в области одного продукта или upgrade линейки?
      Гм... ну и задачки у тебя :)
      Думаю, что достаточно уникальности в области одного продукта.
      А вообще это же очень легко провирить :)

      Ты вот только скажи, тебе это зачем? :unsure:
      - Завтра или послезавтра придет фруктовый пароход из Мобила, - сказал Джонни. - А до той поры нам делать нечего.
      - Но что вы намерены делать? Создать спрос?
      - Много вы понимаете в политической экономии, - ответил консул довольно невежливо. - Спроса создать нельзя. Но можно создать условия, которые вызовут спрос.
        А ты хочешь чтоб у тебя GUID для компонент в разных продуктах были одинаковые?
          seryal
          У меня здоровый проект, из которого собираются два продукта, отличающиеся, фактически, лишь локализацией и именем компании/продукта. Дерево компонент же у них одинаковое. Однако, являясь логически разными продуктами, они должны корректно работать при их одновременной установке на один комп.
          Не то чтобы я хотел чтобы у меня GUID в разных продуктах были одинаковыми, но мне было бы так легче. Хочу узнать насколько это корректно/некорректно.
            Ну два варианта предпочтительно оба сделать :rolleyes:. Сам не делал, не приходилось.
            1. чтение MSDN про компоненты и т.д.
            2. Эксперимент на пустом проекте. (на пустом потому, что так быстрее и надежней).

            По 1 пункту все понятно.
            По 2-му пункту, создать два пустых проекта в оба добавить файл(ы) с одинаковым GUID у компонента описывающего файл(ы) (файлы с ключом сделать) установка в разные места, расшареные не расшареные файлы, так же желательно сделать записи в реест, установка ярлыков и т.д.
            Затем поустанавливать + поудалять + попереустанавливать оба продукта.
            После каждого действия смотреть как ведут себя файлы/ярлыки/записи в реестре и т.д., с одинаковым GUID у компонента, я думаю такой эксперимент все твои вопросы раскроет.
            Вообщем, вот пища для размышлений.
            Интересно было бы услышать про результаты экспериментов.
              Вопрос отпал:
              http://www.osp.ru/cw/2004/04/72875/
              Цитата

              Служба Windows Installer отслеживает все изменения, вносимые в систему в процессе установки компонентов. Если один и тот же компонент используется несколькими приложениями, это отражается в соответствующем счетчике. Кроме того, каждому компоненту назначается уникальный глобальный идентификатор (GUID), а также собственный ключ реестра KeyPath. Отслеживая ссылки на компоненты, а не на отдельные ресурсы, Windows Installer может контролировать все совместно используемые ресурсы, а не только файлы. Библиотеки DLL и другие ресурсы удаляются только при удалении последнего компонента, их использующего.
              1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
              0 пользователей:


              Рейтинг@Mail.ru
              [ Script Execution time: 0,0849 ]   [ 14 queries used ]   [ Generated: 21.08.17, 23:47 GMT ]