Свойство Session.FeatureValidStates

Свойство FeatureValidStates объекта Session возвращает целое число, представляющее битовые флаги с каждым соответствующим битом, представляющим допустимое состояние установки для указанной функции.

Это свойство доступно только для чтения.

Синтаксис

propVal = Session.FeatureValidStates

Значение свойства

Обязательное строковое имя элемента компонента, допустимые состояния установки которого необходимо извлечь.

Remarks

Возвращаемое значение состоит из битовых флагов, как показано ниже. Бит 0: если задано, local является допустимым состоянием. Бит 1: если задано, источник является допустимым состоянием.

Свойство FeatureValidStates завершается успешно только после того, как установщик вызвал действия CostInitialize и CostFinalize .

FeatureValidStates определяет допустимость состояния путем запроса всех компонентов, связанных с указанной функцией, без учета текущего установленного состояния какого-либо компонента.

Возможные допустимые состояния для компонента определяются следующим образом:

  • Если компонент не содержит компонентов, оба INSTALLSTATE_LOCAL и INSTALLSTATE_SOURCE являются допустимыми состояниями для функции.
  • Если хотя бы один компонент компонента компонента имеет атрибут msidbComponentAttributesLocalOnly или msidbComponentAttributesOptional, INSTALLSTATE_LOCAL является допустимым состоянием функции.
  • Если хотя бы один компонент компонента компонента имеет атрибут msidbComponentAttributesSourceOnly или msidbComponentAttributesOptional, INSTALLSTATE_SOURCE является допустимым состоянием функции.
  • Если файл компонента, относящегося к компоненту, исправлен или из сжатого источника, INSTALLSTATE_SOURCE не включен в качестве допустимого состояния компонента.
  • INSTALLSTATE_ADVERTISE не является допустимым состоянием, если функция запрещает объявление (msidbFeatureAttributesDisallowAdvertise) или требует поддержки платформы для рекламы (msidbFeatureAttributesNoUnsupportedAdvertise), а платформа не поддерживает ее.
  • INSTALLSTATE_ABSENT является допустимым состоянием для функции, если ее атрибуты не включают msidbFeatureAttributesUIDisallowAbsent.
  • Допустимые состояния дочерних функций, помеченных для выполнения родительского компонента (msidbFeatureAttributesFollowParent), основаны на действии родительского компонента или состоянии установки.

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

Требования

Требование Значение
Версия
Windows Установщик 5.0 на Windows Server 2012, Windows 8, Windows Server 2008 R2 или Windows 7. Windows Установщик 4.0 или установщик Windows 4.5 на Windows Server 2008 или Windows Vista. установщик Windows в Windows Server 2003 или Windows XP
DLL
Msi.dll
IID
IID_ISession определяется как 000C109E-0000-0000-C000-00000000046