Функция MsiGetComponentStateA (msiquery.h)

Функция MsiGetComponentState получает состояние компонента.

Синтаксис

UINT MsiGetComponentStateA(
  [in]  MSIHANDLE    hInstall,
  [in]  LPCSTR       szComponent,
  [out] INSTALLSTATE *piInstalled,
  [out] INSTALLSTATE *piAction
);

Параметры

[in] hInstall

Дескриптор установки, предоставленной пользовательскому действию DLL или полученной через MsiOpenPackage, MsiOpenPackageEx или MsiOpenProduct.

[in] szComponent

Строка, завершающаяся значением NULL, указывающая имя компонента в продукте.

[out] piInstalled

Получает текущее установленное состояние. Этот параметр не должен иметь значение null. Этот параметр может принимать одно из указанных ниже значений.

Значение Значение
INSTALLSTATE_ABSENT
Компонент не установлен.
INSTALLSTATE_DEFAULT
Компонент устанавливается в расположении по умолчанию: local или source.
INSTALLSTATE_LOCAL
Компонент устанавливается на локальный диск.
INSTALLSTATE_REMOVED
Компонент удаляется. В состоянии действия и не устанавливается.
INSTALLSTATE_SOURCE
Компонент выполняется из источника, компакт-диска или сети.
INSTALLSTATE_UNKNOWN
В функцию было передано нераспознанное имя продукта или функции.

[out] piAction

Получает действие, выполненное во время установки. Этот параметр не должен иметь значение null. Возвращаемые значения см. в разделе piInstalled.

Возвращаемое значение

Функция MsiGetComponentState возвращает следующие значения:

Комментарии

В случае сбоя функции можно получить расширенные сведения об ошибке с помощью MsiGetLastErrorRecord.

Дополнительные сведения см. в разделе Вызов функций базы данных из программ.

Примечание

Заголовок msiquery.h определяет MsiGetComponentState в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Установщик 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
Целевая платформа Windows
Header msiquery.h
Библиотека Msi.lib
DLL Msi.dll

См. также раздел

Функции выбора установщика

Передача null в качестве аргумента функций установщика Windows