que - WiX.NET Bootstrapper-Selección de funciones
modificar head wix (1)
Estamos tratando de obtener un Bootstrapper .NET personalizado para instalar funciones de manera selectiva en un paquete MSI a través de nuestro instalador de WiX.
Al registrarse en el evento PlanMsiFeature, pensamos que podríamos acceder a las funciones en nuestro MSI y excluir ciertas características en función de las condiciones preestablecidas. El evento, sin embargo, nunca parece ser invocado. ¿Alguien ha logrado usar este evento con éxito?
Muchas gracias.
Solucionamos este problema Faltaban algunos elementos clave.
1) En el paquete que contiene nuestra aplicación, el paquete MSI necesitaba el siguiente atributo.
EnableFeatureSelection="yes"
2) En la aplicación de rutina de arranque administrada estábamos configurando la condición de instalación (estado) en Ausente para la característica que no deseamos instalar. La pieza que faltaba aquí era que todos los elementos que deseamos instalar deben tener Local establecido para su estado como Desconocido hace que todos los artículos sean instalados.
void CustomBA_PlanMsiFeature(object sender, PlanMsiFeatureEventArgs e)
{
if (e.FeatureId == "FEATURE_TO_EXCLUDE")
e.State = m_installFeature ? FeatureState.Local : FeatureState.Absent;
else
e.State = FeatureState.Local;
}