installer wix elevated-privileges

installer - ¿Cómo consigo que el instalador de WiX solicite privilegios administrativos?



elevated-privileges (3)

Tenemos un programa que hemos desarrollado en casa. Estamos actualizando para usar Visual Studio 2012, por lo que debemos dejar atrás el proyecto de instalación de Visual Studio. InstallShield LE nos estaba dando problemas con los accesos directos si la aplicación ya estaba instalada. Esto me dejó con finalmente ir con WiX.

Lo he investigado durante unos días y leí varias publicaciones sobre cómo obtener derechos de administrador, pero ninguno de ellos parece funcionar. El elemento Package tiene InstallPrivileges = "1" y el siguiente elemento Property está presente:

<Property Id="MSIUSEREALADMINDETECTION" Value="1" />

No solicitará privilegios de administrador cuando se inicie, por lo que falla cuando intenta crear la carpeta del programa en C:/Program Files(x86) .


Esto es lo que funcionó para mí, para mi MSI creado para la instalación en Windows 7 (y versiones posteriores):

<!-- Set per-machine installation as default. See See http://msdn.microsoft.com/en-us/library/dd408007.aspx for an explanation of ALLUSERS=2 and MSIINSTALLPERUSER="". --> <Property Id="ALLUSERS" Value="2" /> <!-- Needs to be empty value (and empty value must be commented out to get rid of error message when compiling): <Property Id="MSIINSTALLPERUSER" Value="" /> -->

Como se mencionó en el comentario XML anterior, consulte http://msdn.microsoft.com/en-us/library/dd408007.aspx para obtener más información.


Mira la respuesta a esta pregunta de desbordamiento de pila .

Aquí está la esencia de la respuesta:

<Property Id="MSIUSEREALADMINDETECTION" Value="1" />

La solución sugerida por el Opus Krokus no funcionó para mí.


Respuesta sobre cómo obtener el instalador de WiX para solicitar privilegios administrativos

Solución encontrada por en comment .

Responder

Agregué lo siguiente (al elemento Package), y no estoy seguro de cuál (o qué combinación) me dio lo que necesito, pero ahora funciona: InstallPrivileges = "elevated" AdminImage = "yes" InstallScope = "perMachine"