2009-11-16 14 views
6

hola estoy intentando hacer una configuración msi para mi aplicación con wix v3 Tengo un problema con esta tarea; necesito una entrada de usuario que se almacena en el archivo de configuración de mi solicitud (por ejemplo, necesito un diálogo para la cadena de conexión de SQL y la entrada del usuario se escribirá en el archivo de la aplicación de configuración.)wix diálogo personalizado para configuración editar

Traté de Google, pero tengo nada funcionó

Cualquier ayuda es muy apreciada.

Respuesta

5

Tendrá que hacer tres cosas:

  1. Crear una propiedad personalizada:

    <Wix> 
    <Product ...> 
        <Property Id="SQLSERVER" /> ... 
    </Product> 
    </Wix> 
    
  2. Añadir un diálogo personalizado a tu Wix interfaz de usuario para capturar la entrada del usuario y almacenarlo a una propiedad. Este tutorial debería ayudarte con eso.

  3. En el componente que se instala el archivo web.config, utilice el elemento XMLFile para actualizar su web.config con el valor de su propiedad:

    <util:XmlFile Id="UpdateConnectionStringInConfigSection" File="[ROOT_DRIVE]inetpub/wwwroot/$(var.ProductName)/web.config" Action="setValue" ElementPath="/configuration/connectionStrings/add[\[]@name=&quot;ConnectionString&quot;[\]]/@connectionString" Value="[SQLSERVER]" Permanent="yes" /> 
    
+0

dónde viene vienen ¿de? No se muestra en mi intellisense VS2010. – Andez

+2

Entendido. Agregue referencia a WixUtilExtension DLL y también incluya el espacio de nombres en el XML Andez

+0

Si ayuda a alguien más, para ampliar el comentario anterior de Andez, tuve que usar la siguiente línea para definir el espacio de nombres (agregando el http: // y eliminando el punto y coma):' ' – bigmac

Cuestiones relacionadas