Я создал проект веб-установки в сравнении с 2008 годом и добавил некоторые пользовательские действия. При установке я получаю формы по умолчанию (apppool, appname, website), некоторые предопределенные пользовательские формы и некоторые самодельные пользовательские формы. Теперь при установке я добавлю некоторые данные в реестр.VS 2008 MSI Installer: Context.Parameters ["TARGETSITE"] пуст при ремонте
У меня есть только одна проблема: свойство TARGETSITE. Это свойство заполняется по умолчанию (Context.Parameters ["TargetSite"] является чем-то вроде «/ LM/W3SVC/1» для defaultWebSite) и его значение, правильно добавленное в реестр. Everthing в порядке, пока я не воспользуюсь функцией ремонта ...
Во время ремонта первые несколько форм по умолчанию будут пропущены установкой, поэтому свойство TARGETSITE будет пустым (Context.Parameters ["Targetsite"] - ""). К сожалению, я не могу вмешиваться в это, чтобы получить нужное значение из реестра, где я добавил его именно по этой причине. Поскольку значения реестра будут обновлены до того, как пользовательский код будет запущен в методе «переопределить установку». Даже onBeforeInstall запускается после обновления реестра.
Если откат завершен, при ремонте ключ реестра будет сброшен до правильного значения раньше, поэтому я должен поверить, что каким-то образом я могу получить доступ к этому значению из моего кода действия.
У кого-то есть предложения о том, как получить это важное значение?
PS: я попытался установить условие в RegistryKey, так что он будет обновляться только тогда, когда значение TargetSite не пусто, но я боюсь, это будет проигнорировано большое время ... TargetSite = "" в поле настроек реестра не имеет ничего общего ...