Vytvoření instalátoru s češtinou pro WoW
Instalace pomocných nástrojů
Příprava souborů
Vytvořte si nějakou složku např. CzechWoW 3.3.3a, ve které si připravíte soubory pro instalátor.
- Stáhněte z webu wowprekladu soubor WoWLua pro požadovanou verzi klienta, kterou máte na serveru. Např. WowLua_3.3.3a.exe a přejmenujte jej na WowLua.exe.
Nastavení skriptu instalátoru
;NSIS Modern User Interface version 1.70 ;-------------------------------- ;Include Modern UI !include "MUI.nsh" ;-------------------------------- ;General !define VERSION "3.3.3a" !define RELEASE_DATE "2010-04-23" !define TITLE "CzechWoW" !define FULL_TITLE "Český překlad WoW" !define CREATOR "Chronos" !define CHANGELOG_FILE "CzechWoW.htm" !define LOCALE "czCZ" ;Name and file Name "${FULL_TITLE} ${VERSION}" OutFile "Instalace_${TITLE}_${VERSION}_${RELEASE_DATE}.exe" ;Default installation folder InstallDir "$PROGRAMFILES\World of Warcraft\" ;Get installation folder from registry if available InstallDirRegKey HKLM "Software\Blizzard Entertainment\World of Warcraft" "InstallPath" ;-------------------------------- ;Interface Settings !define MUI_ABORTWARNING ;-------------------------------- ;Language Selection Dialog Settings ;Remember the installer language !define MUI_LANGDLL_REGISTRY_ROOT "HKCU" !define MUI_LANGDLL_REGISTRY_KEY "Software\${CREATOR}\${FULL_TITLE}" !define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language" ;-------------------------------- ;Pages !define MUI_ICON "WoW.ico" !define MUI_UNICON "WoW.ico" ;!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico" !insertmacro MUI_PAGE_WELCOME ;!insertmacro MUI_PAGE_LICENSE "${NSISDIR}\Contrib\Modern UI\License.txt" !insertmacro MUI_PAGE_COMPONENTS !insertmacro MUI_PAGE_DIRECTORY !insertmacro MUI_PAGE_INSTFILES !insertmacro MUI_UNPAGE_CONFIRM !insertmacro MUI_UNPAGE_INSTFILES ;-------------------------------- ;Languages !insertmacro MUI_LANGUAGE "Czech" ;-------------------------------- ;Reserve Files ;These files should be inserted before other files in the data block ;Keep these lines before any File command ;Only for solid compression (by default, solid compression is enabled for BZIP2 and LZMA) !insertmacro MUI_RESERVEFILE_LANGDLL ;-------------------------------- ;Installer Sections Section "Základní soubory" Base SetDetailsPrint textonly DetailPrint "Instaluji základní soubory..." SetDetailsPrint listonly SectionIn RO ; Read only section ; Write the uninstall keys for Windows WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${TITLE}" "DisplayName" "${FULL_TITLE}" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${TITLE}" "UninstallString" '"$INSTDIR\Uninstall.exe"' WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${TITLE}" "NoModify" 1 WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${TITLE}" "NoRepair" 1 SetOutPath "$INSTDIR" ;ADD YOUR OWN FILES HERE... File "WowLua.exe" File "${CHANGELOG_FILE}" SetOutPath "$INSTDIR\Data" File "patch-5.MPQ" IfFileExists "$INSTDIR\Data\enGB\*.*" 0 +3 Rename "$INSTDIR\Data\patch-5.MPQ" "$INSTDIR\Data\enGB\patch-enGB-5.MPQ" Goto +2 Rename "$INSTDIR\Data\patch-5.MPQ" "$INSTDIR\Data\enUS\patch-enUS-5.MPQ" ;Store installation folder WriteRegStr HKCU "Software\${CREATOR}\${TITLE}" "" $INSTDIR ;Create uninstaller WriteUninstaller "$INSTDIR\Uninstall.exe" SectionEnd Section "Zástupci nabídky Start" StartMenuShortCut SetDetailsPrint textonly DetailPrint "Instaluji Zástupce nabídky Start..." SetDetailsPrint listonly CreateDirectory "$SMPROGRAMS\${FULL_TITLE}" SetOutPath "$INSTDIR" CreateShortCut "$SMPROGRAMS\${FULL_TITLE}\Odinstalovat.lnk" "$INSTDIR\Uninstall.exe" CreateShortCut "$SMPROGRAMS\${FULL_TITLE}\České WoW.lnk" "$INSTDIR\WowLua.exe" CreateShortCut "$SMPROGRAMS\${FULL_TITLE}\Nápověda.lnk" "$INSTDIR\${CHANGELOG_FILE}" SectionEnd Section "Zástupci na plochu" DesktopShortCut SetDetailsPrint textonly DetailPrint "Instaluji zástupce na plochu..." SetDetailsPrint listonly CreateShortCut "$DESKTOP\České WoW.lnk" "$INSTDIR\WowLua.exe" SectionEnd Section "Zobrazit informace" ShowChangeLog SetDetailsPrint textonly DetailPrint "Zobrazuji doplňující informace..." SetDetailsPrint listonly ExecShell "open" "$INSTDIR\${CHANGELOG_FILE}" SectionEnd Section "Smazat WDB cache" DeleteWDBCache SetDetailsPrint textonly DetailPrint "Mažu WDB cache..." SetDetailsPrint listonly RMDir /r "$INSTDIR\Cache\WDB" SectionEnd ;-------------------------------- ;Installer Functions Function .onInit !insertmacro MUI_LANGDLL_DISPLAY FunctionEnd ;-------------------------------- ;Descriptions ;USE A LANGUAGE STRING IF YOU WANT YOUR DESCRIPTIONS TO BE LANGAUGE SPECIFIC ;Assign descriptions to sections !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN !insertmacro MUI_DESCRIPTION_TEXT ${Base} "Základní soubory" !insertmacro MUI_DESCRIPTION_TEXT ${StartMenuShortCut} "Přidá zástupce do Nabídky start pro snadné použití" !insertmacro MUI_DESCRIPTION_TEXT ${DesktopShortCut} "Přidá zástupce na plochu" !insertmacro MUI_DESCRIPTION_TEXT ${ShowChangeLog} "Zobrazí informace o vydání" !insertmacro MUI_DESCRIPTION_TEXT ${DeleteWDBCache} "Smaže vyrovnávací paměť v podsložece cache\WDB ve složce hry. Ve zde ukládaných souborech se uchovávají anglické texty přijaté ze serveru. Při změně připojení mezi servery anglickými a českými servery je potřeba obsah této složky vymazat." !insertmacro MUI_FUNCTION_DESCRIPTION_END ;-------------------------------- ;Uninstaller Section Section "Uninstall" DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${TITLE}" Delete "$DESKTOP\${TITLE}.lnk" RMDir /r "$SMPROGRAMS\${FULL_TITLE}" Delete "$INSTDIR\WowLua.exe" IfFileExists "$INSTDIR\Data\enGB\*.*" 0 +3 Delete "$INSTDIR\Data\enGB\patch-enGB-5.MPQ" Goto +2 Delete "$INSTDIR\Data\enUS\patch-enUS-5.MPQ" Delete "$INSTDIR\Data\patch-5.MPQ" Delete "$INSTDIR\${CHANGELOG_FILE}" Delete "$INSTDIR\Uninstall.exe" DeleteRegKey /ifempty HKCU "Software\${CREATOR}\${FULL_TITLE}" SectionEnd ;-------------------------------- ;Uninstaller Functions Function un.onInit !insertmacro MUI_UNGETLANGUAGE FunctionEnd