1; Script generated by the HM NIS Edit Script Wizard. 2 3; HM NIS Edit Wizard helper defines 4!define PRODUCT_NAME "OpenVanilla" 5!define PRODUCT_VERSION "0.7.2rc1-20051116" 6!define PRODUCT_PUBLISHER "openvanilla.org" 7!define PRODUCT_WEB_SITE "http://openvanilla.org" 8!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" 9!define PRODUCT_UNINST_ROOT_KEY "HKLM" 10!define IME_ROOT_KEY "HKLM" 11!define IME_KEY "SYSTEM\CurrentControlSet\Control\Keyboard Layouts\" 12!define IME_KEY_USER "Keyboard Layout\Preload" 13 14SetCompressor lzma 15 16; MUI 1.67 compatible ------ 17!include "MUI.nsh" 18 19; MUI Settings 20!define MUI_ABORTWARNING 21!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico" 22!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico" 23 24; Language Selection Dialog Settings 25!define MUI_LANGDLL_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}" 26!define MUI_LANGDLL_REGISTRY_KEY "${PRODUCT_UNINST_KEY}" 27!define MUI_LANGDLL_REGISTRY_VALUENAME "NSIS:Language" 28 29; Welcome page 30!insertmacro MUI_PAGE_WELCOME 31; License page 32!insertmacro MUI_PAGE_LICENSE "..\..\..\Documents\OSX\Installer\zh_TW.lproj\License.rtf" 33; Directory page 34;!insertmacro MUI_PAGE_DIRECTORY 35; Instfiles page 36!insertmacro MUI_PAGE_INSTFILES 37; Finish page 38!insertmacro MUI_PAGE_FINISH 39 40; Uninstaller pages 41!insertmacro MUI_UNPAGE_INSTFILES 42 43; Language files 44!insertmacro MUI_LANGUAGE "English" 45!insertmacro MUI_LANGUAGE "TradChinese" 46 47; Reserve files 48!insertmacro MUI_RESERVEFILE_INSTALLOPTIONS 49 50; MUI end ------ 51 52Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" 53OutFile "OpenVanilla-Win32.exe" 54InstallDir "$WINDIR\OpenVanilla" 55ShowInstDetails show 56ShowUnInstDetails show 57 58Function .onInit 59 ReadRegStr $0 ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Key" 60 StrCmp $0 "" +3 0 61 MessageBox MB_ICONINFORMATION|MB_OK "������w�w�� OpenVanilla �A�в����᭫�s�w�ˡC" 62 Abort 63 !insertmacro MUI_LANGDLL_DISPLAY 64FunctionEnd 65 66Section "MainSection" SEC01 67 SetOutPath "$SYSDIR" 68 SetOverwrite ifnewer 69 File "System32\OVIME.ime" 70 File "System32\libltdl3.dll" 71 File "System32\libiconv-2.dll" 72 File "System32\tinyxml.dll" 73 File "System32\OVIMEUI.DLL" 74 File "System32\OVIME.ime" 75SectionEnd 76 77Section "Modules" SEC02 78 SetOutPath "$WINDIR\OpenVanilla" 79 SetOVerwrite ifnewer 80 File /r "zh_TW" 81 File "OVPreferences.exe" 82 File "OVPreferences.exe.manifest" 83 File "CSharpFormLibrary.dll" 84 SetOutPath "$WINDIR\OpenVanilla\Modules" 85 File "Modules\OVIMRoman.DLL" 86SectionEnd 87 88Section -AdditionalIcons 89 SetOutPath $INSTDIR 90 CreateDirectory "$SMPROGRAMS\OpenVanilla" 91 CreateShortCut "$SMPROGRAMS\OpenVanilla\Uninstall.lnk" "$INSTDIR\uninst.exe" 92 CreateShortCut "$SMPROGRAMS\OpenVanilla\OVPreferences.lnk" "$WINDIR\OpenVanilla\OVPreferences.exe" 93SectionEnd 94 95Section -Post 96 WriteUninstaller "$INSTDIR\uninst.exe" 97 WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" 98 WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe" 99 WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" 100 WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" 101 WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" 102 System::Call 'imm32::ImmInstallIME(t "$SYSDIR\OVIME.ime", t "���� (�c��) - OpenVanilla")' 103 registry::Open /NOUNLOAD "${IME_ROOT_KEY}\${IME_KEY}" /N="OVIME.ime" /G=1 /T=REG_SZ .r0 104 registry::Find /NOUNLOAD .r1 .r2 .r3 .r4 105 StrLen $5 "${IME_KEY}" 106 StrCpy $6 $1 "" $5 107 WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Key" "$6" 108 System::Call "user32::LoadKeyboardLayout(t $6, i 1)" 109# Exec "$WINDIR\OpenVanilla\OVPreferences.exe" 110 MessageBox MB_YESNO "�Y�z�O�즸�w�ˡA�h�����s�}���C�O�_�n�ߨ譫�}���H" IDNO noreboot 111 Reboot 112noreboot: 113SectionEnd 114 115 116Function un.onUninstSuccess 117 HideWindow 118 MessageBox MB_ICONINFORMATION|MB_OK "OpenVanilla �w���\�a�q�A���q�������C" 119FunctionEnd 120 121Function un.onInit 122!insertmacro MUI_UNGETLANGUAGE 123 MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "�A�T�w�n�������� OpenVanilla �A��ΩҦ�������H" IDYES +2 124 Abort 125FunctionEnd 126 127Section Uninstall 128 Delete "$INSTDIR\uninst.exe" 129 Delete "$SYSDIR\libltdl3.dll" 130 Delete "$SYSDIR\libiconv-2.dll" 131 Delete "$SYSDIR\tinyxml.dll" 132 Delete "$SYSDIR\OVIMEUI.DLL" 133 Delete "$SYSDIR\OVIME.ime" 134 Delete "$WINDIR\OpenVanilla\OVPreferences.exe" 135 Delete "$WINDIR\OpenVanilla\OVPreferences.exe.manifest" 136 RMDir /r "$WINDIR\OpenVanilla\zh_TW" 137 Delete "$WINDIR\OpenVanilla\Modules\OVIMRoman.DLL" 138 RMDir "$WINDIR\OpenVanilla\Modules" 139 140 Delete "$SMPROGRAMS\OpenVanilla\Uninstall.lnk" 141 Delete "$SMPROGRAMS\OpenVanilla\OVPreferences.lnk" 142 143 RMDir "$SMPROGRAMS\OpenVanilla" 144 145 ReadRegStr $0 ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Key" 146 DeleteRegKey ${IME_ROOT_KEY} "${IME_KEY}$0" 147 DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" 148 149 SetAutoClose true 150SectionEnd 151