annotate packaging/eduexportconvert.nsi @ 63:4d65e654abf7

Converter: Handle empty percent strings again
author Andre Heinecke <andre.heinecke@intevation.de>
date Fri, 26 Aug 2016 12:24:32 +0200
parents 797435c1bbeb
children badfc05a8bbf
rev   line source
51
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
1 ; Copyright (C) 2016 by ETH Z�rich
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
2 ; Software engineering by Intevation GmbH
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
3 ;
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
4 ; This file is Free Software under the GNU GPL (v>=2)
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
5 ; and comes with ABSOLUTELY NO WARRANTY!
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
6 ; See LICENSE.txt for details.
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
7
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
8 ; This script creates the installer for renameme it needs the
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
9 ; following definitions to be set when calling makensis:
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
10 ;
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
11 ; productname: Name of the Software as it will show up under installed
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
12 ; Software
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
13 ; version_number: The version of the software
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
14 ; setupname: The name for the result created by this
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
15 ; productname_short: Used for the default folder name and such
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
16 ; size: the expectes size of the installation.
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
17
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
18 ;--------------------------------
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
19 ; Includes
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
20
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
21 !define MULTIUSER_EXECUTIONLEVEL Highest
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
22 !define MULTIUSER_MUI
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
23 !define MULTIUSER_INSTALLMODE_COMMANDLINE
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
24 !define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_KEY "Software\${productname_short}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
25 !define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_VALUENAME "InstallMode"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
26 !define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_KEY "Software\${productname_short}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
27 !define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_VALUENAME "InstallDir"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
28 !define MULTIUSER_INSTALLMODE_INSTDIR "${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
29
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
30 !addincludedir "${plugin_dir}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
31
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
32 !include "MultiUser.nsh"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
33 !include "MUI2.nsh"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
34 !include "FileFunc.nsh"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
35
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
36 ;--------------------------------
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
37 ;Version Information (for installer file properties)
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
38
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
39 ;VIProductVersion "${version_number}" ;needs integer format: x.x.x.x
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
40 VIProductVersion ${numeric_version}
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
41 VIAddVersionKey "ProductName" "${productname_short}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
42 VIAddVersionKey "Comments" "${productname_short} ist Freie Software"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
43 VIAddVersionKey "CompanyName" "Intevation GmbH"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
44 VIAddVersionKey "LegalTrademarks" ""
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
45 VIAddVersionKey "LegalCopyright" "Copyright (C) 2016 by ETH Z�rich"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
46 VIAddVersionKey "FileDescription" "Converter for EduApp export files"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
47 VIAddVersionKey "FileVersion" "${version_number}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
48
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
49 ;--------------------------------
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
50 ; General
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
51
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
52 ; Define Name, File and Installdir of Installer
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
53 Name "${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
54 OutFile "${setupname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
55 InstallDir "$PROGRAMFILES\${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
56 BrandingText "ETH Z�rich - ${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
57
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
58 ;--------------------------------
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
59 ; Interface Settings
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
60
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
61 ; MUI Images / Icons
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
62 !define MUI_HEADERIMAGE
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
63 !define MUI_HEADERIMAGE_BITMAP "resources\header-install.bmp"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
64 !define MUI_WELCOMEFINISHPAGE_BITMAP "resources\wizard-install.bmp"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
65 !define MUI_ICON "resources\install.ico"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
66
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
67 !define MUI_HEADERIMAGE_UNBITMAP "resources\header-uninstall.bmp"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
68 !define MUI_UNWELCOMEFINISHPAGE_BITMAP "resources\wizard-uninstall.bmp"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
69 !define MUI_UNICON "resources\uninstall.ico"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
70
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
71 !insertmacro MUI_RESERVEFILE_LANGDLL
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
72 !define MUI_LANGDLL_REGISTRY_ROOT "SHCTX"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
73 !define MUI_LANGDLL_REGISTRY_KEY "Software\${productname_short}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
74 !define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
75
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
76 ;--------------------------------
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
77 ; Pages
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
78
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
79 !define MUI_FINISHPAGE_TITLE "$(T_finish_title)"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
80 !define MUI_FINISHPAGE_TEXT "$(T_finish_text)"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
81
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
82 ; MUI welcome page text
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
83 ;!define MUI_WELCOMEPAGE_TITLE "$(T_title)"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
84 ;!define MUI_WELCOMEPAGE_TITLE_3LINES
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
85 ;!define MUI_WELCOMEPAGE_TEXT "$(T_description) $\r$\n$\r$\n$\r$\n$\r$\n"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
86
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
87 ;!insertmacro MUI_PAGE_WELCOME
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
88 !insertmacro MUI_PAGE_DIRECTORY
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
89 !insertmacro MUI_PAGE_INSTFILES
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
90 !insertmacro MUI_PAGE_FINISH
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
91
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
92 !insertmacro MUI_UNPAGE_WELCOME
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
93 !insertmacro MUI_UNPAGE_INSTFILES
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
94
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
95
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
96 ;--------------------------------
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
97 ;Supported Languages
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
98
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
99 !insertmacro MUI_LANGUAGE "German"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
100 !insertmacro MUI_LANGUAGE "English"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
101
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
102 ;--------------------------------
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
103 ; Install Functions
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
104
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
105 Function ".onInit"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
106 !insertmacro MUI_LANGDLL_DISPLAY
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
107 !insertmacro MULTIUSER_INIT
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
108 FunctionEnd
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
109
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
110 ;--------------------------------
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
111 ; UnInstall Functions
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
112 Function "un.onInit"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
113 !insertmacro MULTIUSER_UNINIT
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
114 FunctionEnd
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
115
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
116 Section ""
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
117 ; The actual installation
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
118 SetOutPath "$INSTDIR"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
119 !include "filelist_in.nsh"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
120 ; Store install directory
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
121 DetailPrint "$(T_registry)"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
122 WriteRegStr SHCTX "Software\${productname_short}" "" $INSTDIR
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
123
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
124 ; Create uninstaller
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
125 WriteUninstaller "$INSTDIR\Uninstall.exe"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
126
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
127 ; Register Uninstaller
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
128
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
129 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
130 "DisplayName" "${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
131 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
132 "DisplayIcon" "$\"$INSTDIR\${productname_short}.exe$\""
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
133 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
134 "DisplayVersion" "${version_number}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
135 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
136 "Publisher" "Intevation GmbH"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
137 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
138 "URLInfoAbout" "${info_url}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
139 WriteRegDword SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
140 "EstimatedSize" "${size}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
141
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
142
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
143 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
144 "UninstallString" "$\"$INSTDIR\uninstall.exe$\""
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
145 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
146 "QuietUninstallString" "$\"$INSTDIR\uninstall.exe$\" /S"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
147
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
148 ; Set up File Extension .edu
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
149 # .edu
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
150 WriteRegStr SHCTX "Software\Classes\${productname_short}.AssocFile.EDU" "" "$(T_File_Type_edu_Name)"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
151 WriteRegStr SHCTX "Software\Classes\${productname_short}.AssocFile.EDU" "FriendlyTypeName" "$(T_File_Type_edu_Name)"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
152 WriteRegStr SHCTX "Software\Classes\${productname_short}.AssocFile.EDU" "PercievedType" "Document"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
153 WriteRegStr SHCTX "Software\Classes\${productname_short}.AssocFile.EDU" "InfoTip" "$(T_File_Type_info_tip)"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
154 WriteRegStr SHCTX "Software\Classes\${productname_short}.AssocFile.EDU\shell\open\command" "" "$\"$INSTDIR\${productname_short}.exe$\" $\"%1$\""
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
155 WriteRegStr SHCTX "Software\Classes\${productname_short}.AssocFile.EDU" "FriendlyAppName" "${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
156 WriteRegStr SHCTX "Software\Classes\${productname_short}.AssocFile.EDU\DefaultIcon" "" "$INSTDIR\${productname_short}.exe"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
157
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
158 WriteRegBin SHCTX "Software\Classes\.edu\OpenWithProgIDs" "${productname_short}.AssocFile.EDU" 0
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
159
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
160 WriteRegStr SHCTX "Software\RegisteredApplications" "${productname_short}" "SOFTWARE\${productname_short}\Capabilities"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
161 WriteRegStr SHCTX "Software\${productname_short}" "" "${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
162 WriteRegStr SHCTX "Software\${productname_short}" "FriendlyAppName" "${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
163
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
164 WriteRegStr SHCTX "Software\${productname_short}\Capabilities" "ApplicationName" "${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
165 WriteRegStr SHCTX "Software\${productname_short}\Capabilities" "ApplicationIcon" "$\"$INSTDIR\${productname_short}.exe$\",0"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
166 WriteRegStr SHCTX "Software\${productname_short}\Capabilities" "ApplicationDescription" "$(T_description)"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
167 WriteRegStr SHCTX "Software\${productname_short}\Capabilities" "FriendlyAppName" "${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
168 WriteRegStr SHCTX "Software\${productname_short}\Capabilities\DefaultIcon" "" "$\"$INSTDIR\${productname_short}.exe$\",0"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
169 WriteRegStr SHCTX "Software\${productname_short}\Capabilities\MimeAssociations" "application/edu-app" "${productname_short}.AssocFile.EDU"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
170 WriteRegExpandStr SHCTX "Software\${productname_short}\Capabilities\shell\open\command" "" "$\"$INSTDIR\${productname_short}.exe$\" $\"%1$\""
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
171 WriteRegStr SHCTX "Software\${productname_short}\Capabilities\shell\open" "FriendlyAppName" "${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
172 WriteRegStr SHCTX "Software\${productname_short}\Capabilities\FileAssociations" ".edu" "${productname_short}.AssocFile.EDU"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
173
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
174
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
175 WriteRegStr SHCTX "SOFTWARE\Classes\Applications\${productname_short}.exe\SupportedTypes" ".edu" ""
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
176 WriteRegStr SHCTX "SOFTWARE\Classes\Applications\${productname_short}.exe\shell\open" "FriendlyAppName" "${productname}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
177
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
178 CreateShortCut "$SMPROGRAMS\${productname}.lnk" "$INSTDIR\${productname_short}.exe"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
179
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
180 System::Call 'Shell32::SHChangeNotify(i 0x8000000, i 0, i 0, i 0)'
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
181 SectionEnd
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
182
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
183 Section "Uninstall"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
184 ExpandEnvStrings $0 %APPDATA%
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
185 Delete "$0\${productname_short}\${productname_short}.ini"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
186 RmDir "$0\${productname_short}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
187 !include "filelist_un.nsh"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
188 ExpandEnvStrings $0 %APPDATA%
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
189 Delete "$INSTDIR\Uninstall.exe"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
190 RMDir "$INSTDIR"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
191 DetailPrint "$(T_unregistry)"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
192
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
193 DeleteRegKey SHCTX "Software\Classes\${productname_short}.AssocFile.EDU"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
194 DeleteRegValue SHCTX "Software\Classes\.edu\OpenWithProgIDs" "${productname_short}.AssocFile.EDU"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
195 DeleteRegValue SHCTX "Software\RegisteredApplications" "${productname_short}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
196 DeleteRegKey SHCTX "Software\${productname_short}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
197
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
198 DeleteRegKey SHCTX "SOFTWARE\Classes\Applications\${productname_short}.exe"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
199
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
200 ; Remove uninstaller
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
201 DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
202
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
203 Delete "$SMPROGRAMS\${productname}.lnk"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
204
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
205 SectionEnd
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
206
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
207 LangString T_description ${LANG_ENGLISH} "${productname} is a Software to convert EduApp-Exports into different formats."
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
208 LangString T_description ${LANG_GERMAN} "${productname} ist eine Anwendung um EduApp-Exporte in andere Formate zu konvertieren."
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
209 LangString T_title ${LANG_ENGLISH} "Welcome to the installation of ${productname} ${version_number}$\r$\n$\r$\n$\r$\n$\r$\n"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
210 LangString T_title ${LANG_GERMAN} "Willkommen zur Installation von ${productname} ${version_number}$\r$\n$\r$\n$\r$\n$\r$\n"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
211 LangString T_finish_title ${LANG_ENGLISH} "Installation successful"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
212 LangString T_finish_title ${LANG_GERMAN} "Installation erfolgreich"
62
797435c1bbeb Packaging: Add notice about .edu file extension on finish
Andre Heinecke <andre.heinecke@intevation.de>
parents: 51
diff changeset
213 LangString T_finish_text ${LANG_ENGLISH} "${productname} was successfully installed on your computer.$\r$\n$\r$\nFiles ending with .edu are now opened with ${productname}.$\r$\n$\r$\nClick 'Finish' to close the Install-Wizard."
797435c1bbeb Packaging: Add notice about .edu file extension on finish
Andre Heinecke <andre.heinecke@intevation.de>
parents: 51
diff changeset
214 LangString T_finish_text ${LANG_GERMAN} "${productname} wurde erfolgreich auf ihrem System installiert. $\r$\n$\r$\nDateien mit der endung .edu werden k�nftig mit ${productname} ge�ffnet.$\r$\n$\r$\nKlicken Sie auf 'Fertig stellen', um den Installations-Assistenten zu schlie�en."
51
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
215 LangString T_File_Type_info_tip ${LANG_ENGLISH} "An EduApp questionaire export."
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
216 LangString T_File_Type_info_tip ${LANG_GERMAN} "Export eines EduApp Fragebogens."
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
217 LangString T_File_Type_edu_Name ${LANG_GERMAN} "EduApp Export"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
218 LangString T_File_Type_edu_Name ${LANG_ENGLISH} "EduApp Export"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
219 LangString T_registry ${LANG_GERMAN} "Anwendung wird registiert"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
220 LangString T_registry ${LANG_ENGLISH} "Registering Application"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
221 LangString T_unregistry ${LANG_GERMAN} "Entferne Registry Eintr�ge"
e9cc707838d1 Add Windows packaging
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
222 LangString T_unregistry ${LANG_ENGLISH} "Unregistering Application"
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)