Victor_VG
Tracker Mod | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору !define PRODUCT_NAME "Imagine" !define PRODUCT_VERSION "1.0.0.0 beta 7" !define PRODUCT_PUBLISHER "Chun Sejin (Korea)" !define PRODUCT_WEB_SITE " http://www.nyam.pe.kr/" !define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\Imagine.exe" !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" !define PRODUCT_UNINST_ROOT_KEY "HKLM" !define PRODUCT_STARTMENU_REGVAL "NSIS:StartMenuDir" SetCompressor /solid lzma !include "MUI.nsh" !include "ProcLib.nsh" !include "Registry.nsh" !define MUI_ABORTWARNING !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install-blue-full.ico" !define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall-blue-full.ico" !define MUI_WELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\InnoSetupWiz.bmp" !define MUI_LANGDLL_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}" !define MUI_LANGDLL_REGISTRY_KEY "${PRODUCT_UNINST_KEY}" !define MUI_LANGDLL_REGISTRY_VALUENAME "NSIS:Language" !insertmacro MUI_PAGE_WELCOME !insertmacro MUI_PAGE_COMPONENTS !insertmacro MUI_PAGE_DIRECTORY var ICONS_GROUP !define MUI_STARTMENUPAGE_NODISABLE !define MUI_STARTMENUPAGE_DEFAULTFOLDER "Imagine" !define MUI_STARTMENUPAGE_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}" !define MUI_STARTMENUPAGE_REGISTRY_KEY "${PRODUCT_UNINST_KEY}" !define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "${PRODUCT_STARTMENU_REGVAL}" !insertmacro MUI_PAGE_STARTMENU Application $ICONS_GROUP !insertmacro MUI_PAGE_INSTFILES !define MUI_FINISHPAGE_RUN "$INSTDIR\Imagine.exe" !define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\Readme.txt" !insertmacro MUI_PAGE_FINISH !insertmacro MUI_UNPAGE_INSTFILES !insertmacro MUI_LANGUAGE "English" !insertmacro MUI_LANGUAGE "Russian" !insertmacro MUI_RESERVEFILE_INSTALLOPTIONS !define HAVE_UPX !ifdef HAVE_UPX !packhdr tmpexe.tmp "UPX --best -q --compress-icons=0 tmpexe.tmp" !endif Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" OutFile "imagine-setup.exe" InstallDir "$PROGRAMFILES\Imagine" InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" "Path" ShowInstDetails hide ShowUnInstDetails hide XPStyle on RequestExecutionLevel highest VIProductVersion "1.0.0.7" BrandingText "Imagine - Image/Animation Viewer for Windows, version 1.0.0.0 Beta 7" VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "Imagine 1.0.0.0 Beta 7" VIAddVersionKey /LANG=${LANG_ENGLISH} "Comments" "Imagine - Image/Animation Viewer for Windows" VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "Chun Sejin (Korea)" VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalTrademarks" "Chun Sejin (Korea), VictorVG @ VikSoft.Ru" VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "© Chun Sejin (Korea)" VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "Waring! This is beta version of program! Your use his is in you risk!. Compiled at ${__DATE__} on ${__TIME__}." VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "1.0.0.1" VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductVersion" "1.0.0.7" VIAddVersionKey /LANG=${LANG_ENGLISH} "InternalName" "imagine" VIAddVersionKey /LANG=${LANG_ENGLISH} "OriginalFilename" "beta-setup" VIAddVersionKey /LANG=${LANG_RUSSIAN} "ProductName" "Imagine 1.0.0.0 Beta 7" VIAddVersionKey /LANG=${LANG_RUSSIAN} "Comments" "Imagine - программа просмотра изображений для Windows" VIAddVersionKey /LANG=${LANG_RUSSIAN} "CompanyName" "Chun Sejin (Korea)" VIAddVersionKey /LANG=${LANG_RUSSIAN} "LegalTrademarks" "Chun Sejin (Korea), VictorVG @ VikSoft.Ru" VIAddVersionKey /LANG=${LANG_RUSSIAN} "LegalCopyright" "© Chun Sejin (Korea)" VIAddVersionKey /LANG=${LANG_RUSSIAN} "FileDescription" "Внимание! Это бета версия программы! Вы используете её на свой страх и риск!. Скомпилировано ${__DATE__} в ${__TIME__}." VIAddVersionKey /LANG=${LANG_RUSSIAN} "FileVersion" "1.0.0.1" VIAddVersionKey /LANG=${LANG_RUSSIAN} "ProductVersion" "1.0.0.7" VIAddVersionKey /LANG=${LANG_RUSSIAN} "InternalName" "imagine" VIAddVersionKey /LANG=${LANG_RUSSIAN} "OriginalFilename" "beta-setup" Function .onInit !insertmacro MUI_LANGDLL_DISPLAY FunctionEnd Section "-main" SetOutPath "$INSTDIR" SetOverwrite try File "Imagein\Imagine.dll" File "Imagein\Imagine.exe" SetOverwrite on SetOutPath "$INSTDIR" File "Imagein\Imagine.hlp" File "Imagein\Readme.txt" File "Imagein\Whatsnew.txt" SetOutPath "$INSTDIR\Language" SetOverwrite on File "Imagein\Language\Bulgarian.lng" File "Imagein\Language\Bulgarian.mnu" File "Imagein\Language\Czech.lng" File "Imagein\Language\Czech.mnu" File "Imagein\Language\Danish.lng" File "Imagein\Language\Danish.mnu" File "Imagein\Language\French.lng" File "Imagein\Language\French.mnu" File "Imagein\Language\German.lng" File "Imagein\Language\German.mnu" File "Imagein\Language\Hungarian.lng" File "Imagein\Language\Hungarian.mnu" File "Imagein\Language\Italian.lng" File "Imagein\Language\Italian.mnu" File "Imagein\Language\Korean.lng" File "Imagein\Language\Korean.mnu" File "Imagein\Language\Nederlands.lng" File "Imagein\Language\Nederlands.mnu" File "Imagein\Language\Polish.lng" File "Imagein\Language\Polish.mnu" File "Imagein\Language\Romanian.lng" File "Imagein\Language\Romanian.mnu" File "Imagein\Language\Russian.lng" File "Imagein\Language\Russian.mnu" File "Imagein\Language\SimplifiedChinese.lng" File "Imagein\Language\SimplifiedChinese.mnu" File "Imagein\Language\Spanish.lng" File "Imagein\Language\Spanish.mnu" File "Imagein\Language\Svenska.lng" File "Imagein\Language\Svenska.mnu" File "Imagein\Language\TraditionalChinese.lng" File "Imagein\Language\TraditionalChinese.mnu" File "Imagein\Language\Ukrainian.lng" File "Imagein\Language\Ukrainian.mnu" SetOutPath "$INSTDIR\Language\Template" SetOverwrite on File "Imagein\Language\Template\Template.lng" File "Imagein\Language\Template\Template.mnu" SectionEnd Section "Base componets" SEC01 Nop SectionEnd Section /o "Additional plug-ins" SEC02 SetOutPath "$INSTDIR\Plugin" File "Imagein\Plugin\J2K.dll" File "Imagein\Plugin\JBIG.dll" File "Imagein\Plugin\LBM.DLL" SectionEnd Section /o "Shell Integration" SEC03 WriteRegStr HKCR "*\shellex\ContextMenuHandlers\Imagine" "" "{57B47F62-4EE4-4BED-A897-2C63198B876F}" WriteRegStr HKCR "CLSID\{57B47F62-4EE4-4BED-A897-2C63198B876F}" "" "Imagine Shell Extension" WriteRegStr HKCR "CLSID\{57B47F62-4EE4-4BED-A897-2C63198B876F}\InProcServer32" "" "$INSTDIR\Imagine.DLL" WriteRegStr HKCR "CLSID\{57B47F62-4EE4-4BED-A897-2C63198B876F}\InProcServer32" "ThreadingModel" "Apartment" WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" "{57B47F62-4EE4-4BED-A897-2C63198B876F}" "Imagine Shell Extension" SectionEnd Section -Icons SetShellVarContext all !insertmacro MUI_STARTMENU_WRITE_BEGIN Application WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}" CreateDirectory "$SMPROGRAMS\$ICONS_GROUP" CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Imagine.lnk" "$INSTDIR\Imagine.exe" StrCmp $LANGUAGE 1049 +2 +1 MessageBox MB_ICONQUESTION|MB_YESNO "Do you like place icon for Imagine in to common Desktop?" IDYES +2 IDNO +4 MessageBox MB_ICONQUESTION|MB_YESNO "Вы хотите поместить значок Imagine на общий Рабочий Стол?" IDYES +1 IDNO +2 CreateShortCut "$DESKTOP\Imagine.lnk" "$INSTDIR\Imagine.exe" CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Help.lnk" "$INSTDIR\Imagine.hlp" CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url" CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Uninstall.lnk" "$INSTDIR\img-uninst.exe" !insertmacro MUI_STARTMENU_WRITE_END SectionEnd Section -Post WriteUninstaller "$INSTDIR\img-uninst.exe" WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\Imagine.exe" WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "Path" "$INSTDIR" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\img-uninst.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\Imagine.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" SectionEnd !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN !insertmacro MUI_DESCRIPTION_TEXT ${SEC01} "Main files installation. Always installed" !insertmacro MUI_DESCRIPTION_TEXT ${SEC02} "JPEG2000 support plug-ins" !insertmacro MUI_DESCRIPTION_TEXT ${SEC03} "Integration Imagine in to Windows Shell" !insertmacro MUI_FUNCTION_DESCRIPTION_END Function un.onUninstSuccess HideWindow MessageBox MB_ICONINFORMATION|MB_OK "Удаление программы $(^Name) было успешно завершено." FunctionEnd Function un.onInit !insertmacro MUI_UNGETLANGUAGE MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Вы уверены в том, что желаете удалить $(^Name) и все компоненты программы?" IDYES +2 Abort FunctionEnd Section Uninstall SetShellVarContext all !insertmacro MUI_STARTMENU_GETFOLDER "Application" $ICONS_GROUP DeleteRegKey HKCR "CLSID\{57B47F62-4EE4-4BED-A897-2C63198B876F}" DeleteRegKey HKCR "*\shellex\ContextMenuHandlers\Imagine" DeleteRegValue HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" "{57B47F62-4EE4-4BED-A897-2C63198B876F}" nsExec::ExecToStack /TIMEOUT=1 "$INSTDIR\Imagine.exe /uninstall" Delete "$INSTDIR\${PRODUCT_NAME}.url" Delete "$INSTDIR\img-uninst.exe" Delete "$INSTDIR\Imagine.ini" Delete "$INSTDIR\Whatsnew.txt" Delete "$INSTDIR\Readme.txt" Delete "$INSTDIR\Plugin\LBM.DLL" Delete "$INSTDIR\Plugin\JBIG.dll" Delete "$INSTDIR\Plugin\J2K.dll" Delete "$INSTDIR\Language\Ukrainian.mnu" Delete "$INSTDIR\Language\Ukrainian.lng" Delete "$INSTDIR\Language\TraditionalChinese.mnu" Delete "$INSTDIR\Language\TraditionalChinese.lng" Delete "$INSTDIR\Language\Template\Template.mnu" Delete "$INSTDIR\Language\Template\Template.lng" Delete "$INSTDIR\Language\Svenska.mnu" Delete "$INSTDIR\Language\Svenska.lng" Delete "$INSTDIR\Language\Spanish.mnu" Delete "$INSTDIR\Language\Spanish.lng" Delete "$INSTDIR\Language\SimplifiedChinese.mnu" Delete "$INSTDIR\Language\SimplifiedChinese.lng" Delete "$INSTDIR\Language\Russian.mnu" Delete "$INSTDIR\Language\Russian.lng" Delete "$INSTDIR\Language\Romanian.mnu" Delete "$INSTDIR\Language\Romanian.lng" Delete "$INSTDIR\Language\Polish.mnu" Delete "$INSTDIR\Language\Polish.lng" Delete "$INSTDIR\Language\Nederlands.mnu" Delete "$INSTDIR\Language\Nederlands.lng" Delete "$INSTDIR\Language\Korean.mnu" Delete "$INSTDIR\Language\Korean.lng" Delete "$INSTDIR\Language\Italian.mnu" Delete "$INSTDIR\Language\Italian.lng" Delete "$INSTDIR\Language\Hungarian.mnu" Delete "$INSTDIR\Language\Hungarian.lng" Delete "$INSTDIR\Language\German.mnu" Delete "$INSTDIR\Language\German.lng" Delete "$INSTDIR\Language\French.mnu" Delete "$INSTDIR\Language\French.lng" Delete "$INSTDIR\Language\Danish.mnu" Delete "$INSTDIR\Language\Danish.lng" Delete "$INSTDIR\Language\Czech.mnu" Delete "$INSTDIR\Language\Czech.lng" Delete "$INSTDIR\Language\Bulgarian.mnu" Delete "$INSTDIR\Language\Bulgarian.lng" Delete "$INSTDIR\Imagine.hlp" Delete "$INSTDIR\Imagine.gid" Delete "$INSTDIR\Imagine.fts" Delete "$INSTDIR\Imagine.exe" Delete "$INSTDIR\Imagine.dll" SetShellVarContext all Delete "$SMPROGRAMS\$ICONS_GROUP\Uninstall.lnk" Delete "$SMPROGRAMS\$ICONS_GROUP\Website.lnk" Delete "$SMPROGRAMS\$ICONS_GROUP\Help.lnk" Delete "$DESKTOP\Imagine.lnk" Delete "$SMPROGRAMS\$ICONS_GROUP\Imagine.lnk" RMDir "$SMPROGRAMS\$ICONS_GROUP" RMDir /r "$INSTDIR\Plugin" RMDir /r "$INSTDIR\Language\Template" RMDir /r "$INSTDIR\Language" RMDir "$INSTDIR" DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}" SetAutoClose true SectionEnd |