studio nsis_error net more information honor has for failed error desinstalar damaged check installer nsis

installer - nsis_error - Guardar el registro de instalación de NSIS



nsis error al desinstalar (3)

Aquí hay una solución directamente desde el Dump_log_to_file

StrCpy $0 "$EXEDIR/install.log" Push $0 Call DumpLog !define LVM_GETITEMCOUNT 0x1004 !define LVM_GETITEMTEXT 0x102D Function DumpLog Exch $5 Push $0 Push $1 Push $2 Push $3 Push $4 Push $6 FindWindow $0 "#32770" "" $HWNDPARENT GetDlgItem $0 $0 1016 StrCmp $0 0 exit FileOpen $5 $5 "w" StrCmp $5 "" exit SendMessage $0 ${LVM_GETITEMCOUNT} 0 0 $6 System::Alloc ${NSIS_MAX_STRLEN} Pop $3 StrCpy $2 0 System::Call "*(i, i, i, i, i, i, i, i, i) i / (0, 0, 0, 0, 0, r3, ${NSIS_MAX_STRLEN}) .r1" loop: StrCmp $2 $6 done System::Call "User32::SendMessageA(i, i, i, i) i / ($0, ${LVM_GETITEMTEXT}, $2, r1)" System::Call "*$3(&t${NSIS_MAX_STRLEN} .r4)" FileWrite $5 "$4$/r$/n" IntOp $2 $2 + 1 Goto loop done: FileClose $5 System::Free $1 System::Free $3 exit: Pop $6 Pop $4 Pop $3 Pop $2 Pop $1 Pop $0 Exch $5 FunctionEnd

¿Cuál es la forma más fácil de guardar el registro de instalación que se muestra en NSIS? Parece recordar haber leído en alguna parte que puede volver a compilar el código NSIS con un indicador especial para permitirle guardar el registro. hay una manera mas facil?



En un intento por mantener el tamaño de los archivos pequeños, la instalación predeterminada del compilador NSIS no crea archivos de registro. Descargue la versión especial de una versión y makensis.exe sobre la aplicación makensis.exe (y la carpeta Stub ) para parchearla para que tenga soporte de registro.

Una vez que haya hecho eso, simplemente agregue lo siguiente a su script:

LogSet on

No se necesitan otros cambios. No tengo idea de por qué esto no es predeterminado, como en mis casos, ¡solo agrega 48 bytes al tamaño del archivo!