corrade-vassal – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | vero | 1 | |
2 | Function .onInit |
||
3 | |||
4 | SetOutPath $TEMP |
||
5 | File /oname=spltmp.bmp "InstallSplash.bmp" |
||
6 | |||
7 | splash::show 2500 $TEMP\spltmp |
||
8 | |||
9 | Pop $0 ; $0 has '1' if the user closed the splash screen early, |
||
10 | ; '0' if everything closed normally, and '-1' if some error occurred. |
||
11 | |||
12 | Delete $TEMP\spltmp.bmp |
||
13 | |||
14 | ; prevent installer from being started twice |
||
15 | System::Call 'kernel32::CreateMutexA(i 0, i 0, t "OpenMetaverseInstaller") i .r1 ?e' |
||
16 | Pop $R0 |
||
17 | StrCmp $R0 0 +3 |
||
18 | MessageBox MB_OK|MB_ICONEXCLAMATION "The OpenMetaverse installer is already running." |
||
19 | Abort |
||
20 | |||
21 | SectionSetFlags SEC01 17 ; locks first section, ie forced to install |
||
22 | |||
23 | ; get release version information |
||
24 | File /oname=omvdll.dll "..\bin\OpenMetaverse.dll" |
||
25 | GetDLLVersion "$TEMP\omvdll.dll" $R0 $R1 |
||
26 | IntOp $R2 $R0 >> 16 |
||
27 | IntOp $R2 $R2 & 0x0000FFFF ; $R2 now contains major version |
||
28 | IntOp $R3 $R0 & 0x0000FFFF ; $R3 now contains minor version |
||
29 | IntOp $R4 $R1 >> 16 |
||
30 | IntOp $R4 $R4 & 0x0000FFFF ; $R4 now contains release |
||
31 | IntOp $R5 $R1 & 0x0000FFFF ; $R5 now contains build |
||
32 | Var /GLOBAL PRODUCT_MAJOR |
||
33 | Var /GLOBAL PRODUCT_MINOR |
||
34 | Var /GLOBAL PRODUCT_RELEASE |
||
35 | Var /GLOBAL PRODUCT_BUILD |
||
36 | |||
37 | StrCpy $PRODUCT_MAJOR $R2 |
||
38 | StrCpy $PRODUCT_MINOR $R3 |
||
39 | StrCpy $PRODUCT_RELEASE $R4 |
||
40 | StrCpy $PRODUCT_BUILD $R5 |
||
41 | Delete $TEMP\omvdll.dll |
||
42 | |||
43 | FunctionEnd |
||
44 | |||
45 | ; HM NIS Edit Wizard helper defines |
||
46 | !define PRODUCT_NAME "OpenMetaverse" |
||
47 | !define PRODUCT_VERSION "$PRODUCT_MAJOR.$PRODUCT_MINOR.$PRODUCT_RELEASE (build $PRODUCT_BUILD)" |
||
48 | !define PRODUCT_PUBLISHER "OpenMetaverse Ninjas" |
||
49 | !define PRODUCT_WEB_SITE "http://www.openmetaverse.org/" |
||
50 | !define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\OpenMetaverse.dll" |
||
51 | !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" |
||
52 | !define PRODUCT_UNINST_ROOT_KEY "HKLM" |
||
53 | |||
54 | VIProductVersion "1.0.0.0" |
||
55 | VIAddVersionKey "ProductName" "OpenMetaverse Library" |
||
56 | VIAddVersionKey "Comments" "" |
||
57 | VIAddVersionKey "CompanyName" "OpenMetaverse Ninjas" |
||
58 | VIAddVersionKey "LegalTrademarks" "See License.txt for licensing terms" |
||
59 | VIAddVersionKey "LegalCopyright" "© OpenMetaverse" |
||
60 | VIAddVersionKey "FileDescription" "OpenMetaverse Installer" |
||
61 | VIAddVersionKey "FileVersion" "1.0.0" |
||
62 | |||
63 | ; MUI 1.67 compatible ------ |
||
64 | !include "MUI2.nsh" |
||
65 | BrandingText "OpenMetaverse Installer v2.36" |
||
66 | ; MUI Settings |
||
67 | !define MUI_HEADERIMAGE |
||
68 | !define MUI_HEADERIMAGE_BITMAP "InstallerHeader.bmp" ; optional |
||
69 | ;!define MUI_BGCOLOR 001122 |
||
70 | ;!define MUI_HEADER_TRANSPARENT_TEXT |
||
71 | !define MUI_WELCOMEFINISHPAGE_BITMAP "InstallWelcome.bmp" |
||
72 | !define MUI_ABORTWARNING |
||
73 | |||
74 | !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico" |
||
75 | !define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico" |
||
76 | !define MUI_LICENSEPAGE_BGCOLOR /grey |
||
77 | ;BGGradient 001122 0058B0 FFFFFF |
||
78 | ; Welcome page |
||
79 | !insertmacro MUI_PAGE_WELCOME |
||
80 | ; License page |
||
81 | !insertmacro MUI_PAGE_LICENSE "..\LICENSE.txt" |
||
82 | ; Components page |
||
83 | !insertmacro MUI_PAGE_COMPONENTS |
||
84 | ; Directory page |
||
85 | !insertmacro MUI_PAGE_DIRECTORY |
||
86 | ; Instfiles page |
||
87 | !insertmacro MUI_PAGE_INSTFILES |
||
88 | ; Finish page |
||
89 | ;!define MUI_FINISHPAGE_RUN "$INSTDIR\GUITestClient.exe" |
||
90 | !define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\docs\README.txt" |
||
91 | !define MUI_FINISHPAGE_LINK "OpenMetaverse" |
||
92 | !define MUI_FINISHPAGE_LINK_LOCATION "http://www.openmetaverse.org/" |
||
93 | !insertmacro MUI_PAGE_FINISH |
||
94 | |||
95 | ; Uninstaller pages |
||
96 | !insertmacro MUI_UNPAGE_INSTFILES |
||
97 | |||
98 | ; Language files |
||
99 | !insertmacro MUI_LANGUAGE "English" |
||
100 | |||
101 | ; MUI end ------ |
||
102 | Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" |
||
103 | OutFile "OpenMetaverseInstaller.exe" |
||
104 | XPStyle on |
||
105 | InstallDir "$PROGRAMFILES\OpenMetaverse\libomv" |
||
106 | InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" "" |
||
107 | ShowInstDetails show |
||
108 | ShowUnInstDetails show |
||
109 | |||
110 | ; required base system! |
||
111 | Section "!Base Libraries" SEC01 |
||
112 | SetOutPath "$INSTDIR\bin" |
||
113 | CreateDirectory "$SMPROGRAMS\OpenMetaverse\libomv" |
||
114 | SetOverwrite ifnewer |
||
115 | File "..\bin\log4net.dll" |
||
116 | File "..\bin\openjpeg-dotnet.dll" |
||
117 | File "..\bin\openjpeg-dotnet-x86_64.dll" |
||
118 | File "..\bin\OpenMetaverse.dll" |
||
119 | File "..\bin\OpenMetaverse.GUI.dll" |
||
120 | File "..\bin\OpenMetaverse.StructuredData.dll" |
||
121 | File "..\bin\OpenMetaverse.Utilities.dll" |
||
122 | File "..\bin\OpenMetaverseTypes.dll" |
||
123 | File "..\bin\OpenMetaverse.dll.config" |
||
124 | File "..\bin\OpenMetaverse.Rendering.Simple.dll" |
||
125 | File "..\bin\OpenMetaverse.Rendering.Meshmerizer.dll" |
||
126 | File "..\README.txt" |
||
127 | File "..\License.txt" |
||
128 | File "..\bin\XMLRPC.dll" |
||
129 | File "..\bin\zlib.net.dll" |
||
130 | |||
131 | SetOutPath "$INSTDIR\bin\openmetaverse_data" |
||
132 | File /r "..\bin\openmetaverse_data\*.*" |
||
133 | SectionEnd |
||
134 | |||
135 | Section "API Documentation" SEC02 |
||
136 | SetOutPath "$INSTDIR\docs" |
||
137 | ; CreateDirectory "$SMPROGRAMS\OpenMetaverse\libomv\docs" |
||
138 | File "trunk\OpenMetaverse.chm" |
||
139 | File "..\README.txt" |
||
140 | CreateShortCut "$SMPROGRAMS\OpenMetaverse\libomv\README.lnk" "$INSTDIR\docs\README.txt" |
||
141 | SetOutPath "$INSTDIR\bin" |
||
142 | File "..\bin\*.XML" |
||
143 | CreateShortCut "$SMPROGRAMS\OpenMetaverse\libomv\API Documentation.lnk" "$INSTDIR\docs\OpenMetaverse.chm" |
||
144 | CreateShortCut "$SMPROGRAMS\OpenMetaverse\libomv\Library and Examples.lnk" $INSTDIR\bin" |
||
145 | SectionEnd |
||
146 | |||
147 | Section "Example Applications" SEC03 |
||
148 | SetOutPath "$INSTDIR\bin" |
||
149 | ; File "..\bin\*.exe" |
||
150 | File "..\bin\Dashboard.exe" |
||
151 | File "..\bin\GridAccountant.exe" |
||
152 | File "..\bin\GridImageUpload.exe" |
||
153 | File "..\bin\GridProxyApp.exe" |
||
154 | File "..\bin\GridProxy.dll" |
||
155 | File "..\bin\groupmanager.exe" |
||
156 | File "..\bin\TestClient.exe" |
||
157 | ; PrimWorkShop/AvatarPreview |
||
158 | File "..\bin\PrimWorkshop.exe" |
||
159 | File "..\bin\AvatarPreview.exe" |
||
160 | File "..\bin\GlacialList.dll" |
||
161 | File "..\bin\Tao.OpenGL.dll" |
||
162 | File "..\bin\Tao.Platform.Windows.dll" |
||
163 | File "..\bin\ICSharpCode.SharpZipLib.dll" |
||
164 | File "..\bin\WinGridProxy.exe" |
||
165 | File "..\bin\WinGridProxy.exe.config" |
||
166 | File "..\bin\Be.Windows.Forms.HexBox.dll" |
||
167 | SectionEnd |
||
168 | |||
169 | Section -AdditionalIcons |
||
170 | WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}" |
||
171 | CreateShortCut "$SMPROGRAMS\OpenMetaverse\libomv Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url" |
||
172 | CreateShortCut "$SMPROGRAMS\OpenMetaverse\Uninstall.lnk" "$INSTDIR\uninst.exe" |
||
173 | SectionEnd |
||
174 | |||
175 | Section -Post |
||
176 | WriteUninstaller "$INSTDIR\uninst.exe" |
||
177 | WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\OpenMetaverse.dll" |
||
178 | WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" |
||
179 | WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe" |
||
180 | WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\OpenMetaverse.dll" |
||
181 | WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" |
||
182 | WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" |
||
183 | WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" |
||
184 | SectionEnd |
||
185 | |||
186 | ; Section descriptions |
||
187 | !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN |
||
188 | !insertmacro MUI_DESCRIPTION_TEXT ${SEC01} "Core library components required for application usage" |
||
189 | !insertmacro MUI_DESCRIPTION_TEXT ${SEC02} "API Documentation files in CHM format and Intellisense Databases for Visual Studio" |
||
190 | !insertmacro MUI_DESCRIPTION_TEXT ${SEC03} "Example applications including TestClient" |
||
191 | !insertmacro MUI_FUNCTION_DESCRIPTION_END |
||
192 | |||
193 | |||
194 | Function un.onUninstSuccess |
||
195 | HideWindow |
||
196 | MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." |
||
197 | FunctionEnd |
||
198 | |||
199 | Function un.onInit |
||
200 | MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" IDYES +2 |
||
201 | Abort |
||
202 | FunctionEnd |
||
203 | |||
204 | Section Uninstall |
||
205 | Delete "$INSTDIR\${PRODUCT_NAME}.url" |
||
206 | Delete "$INSTDIR\uninst.exe" |
||
207 | |||
208 | Delete "$INSTDIR\docs\*" |
||
209 | RMDir "$INSTDIR\docs" |
||
210 | |||
211 | Delete "$INSTDIR\bin\openmetaverse_data\*" |
||
212 | RMDir "$INSTDIR\bin\openmetaverse_data" |
||
213 | |||
214 | Delete "$INSTDIR\bin\*" |
||
215 | RMDir "$INSTDIR\bin" |
||
216 | |||
217 | Delete "$SMPROGRAMS\OpenMetaverse\Uninstall.lnk" |
||
218 | Delete "$SMPROGRAMS\OpenMetaverse\libomv Website.lnk" |
||
219 | Delete "$SMPROGRAMS\OpenMetaverse\libomv\README.lnk" |
||
220 | Delete "$SMPROGRAMS\OpenMetaverse\libomv\API Documentation.lnk" |
||
221 | Delete "$SMPROGRAMS\OpenMetaverse\libomv\Library and Examples.lnk" |
||
222 | RMDir "$SMPROGRAMS\OpenMetaverse\libomv" |
||
223 | RMDir "$SMPROGRAMS\OpenMetaverse" |
||
224 | RMDir "$INSTDIR" |
||
225 | |||
226 | DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" |
||
227 | DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}" |
||
228 | SetAutoClose true |
||
229 | SectionEnd |
||
230 | |||
231 |