2011-08-19 20 views
31

he estado tratando de crear un archivo de registro para un problema con nuestro instalador con los siguientes comandos:Crear un archivo de registro MSI

msiexec /i "installer.msi" /l*v "log.log" 
msiexec /i "installer.msi" /l*v 
msiexec /l*v /i "installer.msi" 
msiexec /l*v "log.log" /i "installer.msi" 

y varias otras variaciones de la orden, pero siempre aparece la ventana que indica qué parámetros de línea de comando son válidos para msiexec. ¿Cuál es la forma correcta de hacer que el archivo msi cree un registro? Tengo el instalador de Windows 4.5.

Respuesta

46

La primera y la última líneas de comandos son correctos:

msiexec /i "installer.msi" /l*v "log.log" 
msiexec /l*v "log.log" /i "installer.msi" 

y se puede colocar comillas en este caso particular.

1

simplemente he intentado de nuevo después de un reinicio, el primer comando funcionó inmediatamente. No sé qué estuvo mal, pero ahora está registrando.

+1

Podría ser que, o bien .log o .msi se quedaron encerrados por un proceso, y fracasó. O el servicio Windows Installer se volvió inestable por alguna razón. –

+0

Mi experiencia es que lo mejor es siempre especificar la ruta completa al archivo MSI. No puedo decir si ese es el problema sin conocer el contexto de los comandos msiexec. – PhilDW

11

Si está utilizando Visual Studio 2008, use la palabra capital "/L" para la opción de registro. Letra minúscula "/l" se ignora.

msiexec /i "installer.msi" /L*v "log.log" 

Parece que se ha corregido en las versiones posteriores de msiexec.

+0

opciones son mayúsculas y minúsculas; Claro, el capital 'L' es más distintivo que el minúsculo' l'. –

+0

[Documentación de MSDN] (http://msdn.microsoft.com/en-us/library/aa367988 (v = vs.85) .aspx) dice _ "Las opciones de línea de comandos no distinguen entre mayúsculas y minúsculas." _ (La segunda oración en la página.) Siempre he usado las opciones minúsculas '/ i' y'/l'. –

+0

Probablemente depende de la versión. Escribí la respuesta porque * requería mayúscula L en Visual Studio 2008 *. Parece que MS ha solucionado el problema, porque lo intenté de nuevo en Visual Studio 2013 y acepta letra minúscula L. –

Cuestiones relacionadas