Función MsiSetFeatureStateA (msiquery.h)
La función
Sintaxis
UINT MsiSetFeatureStateA(
[in] MSIHANDLE hInstall,
[in] LPCSTR szFeature,
[in] INSTALLSTATE iState
);
Parámetros
[in] hInstall
Controle la instalación proporcionada a una acción personalizada de DLL o obtenida a través de MsiOpenPackage, MsiOpenPackageExo MsiOpenProduct.
[in] szFeature
Especifica el nombre de la característica.
[in] iState
Especifica el estado que se va a establecer. Este parámetro puede ser uno de los siguientes valores.
Valor devuelto
La función
Observaciones
La función
Se debe llamar a la función
Cuando se llama a MsiSetFeatureState, el instalador intenta establecer el estado de acción de cada componente asociado a la característica especificada en el estado especificado. Sin embargo, hay situaciones comunes en las que la solicitud no se puede implementar completamente. Por ejemplo, si una característica está vinculada a dos componentes, componente A y componente B, a través de la tabla FeatureComponents y el componente A tiene el atributo msidbComponentAttributesLocalOnly y el componente B tiene el atributo msidbComponentAttributesSourceOnly. En este caso, si se llama
Si más de una característica está vinculada a un único componente (un escenario común), el estado de acción final de ese componente se determina de la siguiente manera:
- Si al menos una característica requiere que el componente se instale localmente, la característica se instala con un estado local.
- Si al menos una característica requiere que el componente se ejecute desde el origen, la característica se instala con un estado de origen.
- Si al menos una característica requiere la eliminación del componente, el estado de la acción está ausente.
Si se produce un error en la función, puede obtener información de error extendida mediante MsiGetLastErrorRecord.
Nota
El encabezado msiquery.h define MsiSetFeatureState como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows Installer 5.0 en Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Windows Installer 4.0 o Windows Installer 4.5 en Windows Server 2008 o Windows Vista. Windows Installer en Windows Server 2003 o Windows XP |
de la plataforma de destino de |
Windows |
encabezado de |
msiquery.h |
biblioteca de |
Msi.lib |
DLL de |
Msi.dll |
Consulte también
funciones de selección del instalador de