Archive: Installer Crashes (compiled with NSISrc2)


Installer Crashes (compiled with NSISrc2)
; Version information for the installer executable
VIAddVersionKey ProductName "AppName"
VIAddVersionKey ProductVersion "0.1.1"
VIAddVersionKey Comments "AppName Installer"
VIAddVersionKey CompanyName ""
VIAddVersionKey LegalCopyright ""
VIAddVersionKey FileDescription "Win32 Installer"
VIAddVersionKey FileVersion "1.1"
VIAddVersionKey InternalName "AppName Installer - Win32"
VIAddVersionKey LegalTrademarks ""
VIAddVersionKey OriginalFilename "AppName.exe"
VIAddVersionKey PrivateBuild ""
VIAddVersionKey SpecialBuild "Language Packs"
VIProductVersion "0.1.1.0"

SetCompressor lzma

!include "MUI.nsh"

!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_FINISH

Name "testLangString"
OutFile "testLangString.exe"

; !insertmacro MUI_LANGUAGE "French"
; !insertmacro MUI_LANGUAGE "German"
; !insertmacro MUI_LANGUAGE "Greek"
; !insertmacro MUI_LANGUAGE "Italian"
; !insertmacro MUI_LANGUAGE "Japanese"
; !insertmacro MUI_LANGUAGE "Polish"
; !insertmacro MUI_LANGUAGE "Romanian"
; !insertmacro MUI_LANGUAGE "Russian"
; !insertmacro MUI_LANGUAGE "Spanish"
!insertmacro MUI_LANGUAGE "SimpChinese"

!insertmacro MUI_RESERVEFILE_LANGDLL

Section "dummy" SectionDummy
SectionEnd

Function .onInit
!insertmacro MUI_LANGDLL_DISPLAY
FunctionEnd

Function un.onInit
!insertmacro MUI_UNGETLANGUAGE
FunctionEnd


---
After I compile it, it crashes on run.

Several ways to fix the crash:
1. Remove MUI_PAGE_DIRECTORY (OR)
2. Remove ALL the (Version Information:)VI... strings (OR)
3. Uncomment French
3.1. If you uncomment German, it won't work again.
3.2. After German, uncomment Greek... now it works
3.3. Uncomment Italian... it still works...
3.4. If you now uncomment Japanese.. it won't work again.
... didn't try the other versions...


Dave is already investigating this isssue.


Note: 3. Uncomment French - it works

Another strange thing:
- assuming you have commented ONLY Russian and Spanish in the previous example
- run the installer and choose Japanese
- you'll notice that all the strings in the Directory page are messed up

(I also noticed some RightToLeft text formatting - even the dialog boxes displaying with shadows on the other side, the buttons reversed and so on - but I can't reproduce this situation.. yet)

If I comment "SimpChinese", the texts go to their right possitions.


For now, fix SimpChinese and TradChinese to use $(^NameDA) instead of $(^Name) where needed and don't use Estonian as the last language.


Fixed Chinese language files.


These crashes should now all be fixed in the latest development version. Thanks for the info, it did help to pinpoint the root cause.