Small Fixes in styling
[pithos-ms-client] / trunk / Pithos.Installer / PithosPlus.iss
1 ; Script generated by the Inno Setup Script Wizard.\r
2 ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!\r
3 \r
4 #define MyAppName "Pithos+"\r
5 #define MyStartupName "Run Pithos on startup"\r
6 #define SrcApp "..\Pithos.Client.WPF\bin\Debug\PithosPlus.exe"\r
7 #define MyAppPublisher "GRNET"\r
8 #define MyAppURL "http://pithos.grnet.gr/"\r
9 #define MyAppExeName "PithosPlus.exe"\r
10 #define MyAppVersion GetFileVersion(SrcApp)\r
11 #define MyURL "http://www.grnet.gr/"\r
12 #define Manufacturer "GRNET"\r
13 \r
14 [Setup]\r
15 ;WARNING: DO NOT CHANGE THE APP ID (AppId) or the update will not work correctly.\r
16 ;AppId is used to check if we are installed using this isntaller and not by other means.\r
17 AppID={{926354B2-04D2-47CF-8FAA-04AB3682008B}}\r
18 AppName={#MyAppName}\r
19 AppVersion={#MyAppVersion}\r
20 AppVerName={#MyAppName} {#MyAppVersion}\r
21 UninstallDisplayName={#MyAppName} {#MyAppVersion}\r
22 AppPublisher={#MyAppPublisher}\r
23 AppPublisherURL={#MyAppURL}\r
24 AppSupportURL={#MyAppURL}\r
25 AppUpdatesURL={#MyAppURL}\r
26 DefaultDirName={pf}\PithosPlus\r
27 DefaultGroupName={#MyAppName}\r
28 AllowNoIcons=true\r
29 LicenseFile=Licenses\GRNET License.txt\r
30 OutputBaseFilename=PithosPlus_Setupv{#MyAppVersion}\r
31 SolidCompression=true\r
32 UsePreviousSetupType=true\r
33 UsePreviousTasks=true\r
34 UsePreviousLanguage=True\r
35 ShowTasksTreeLines=true\r
36 AppCopyright=(c) 2011 - 2012 GRNET\r
37 PrivilegesRequired=admin\r
38 EnableDirDoesntExistWarning=true\r
39 DirExistsWarning=yes\r
40 AppContact=support@okeanos.grnet.gr\r
41 AppSupportPhone=+30 210 0000000\r
42 AppReadmeFile=My Readme\r
43 UninstallDisplayIcon={app}\PithosPlus.exe\r
44 WizardImageFile=Images\ppWZDImage.bmp\r
45 WizardSmallImageFile=Images\pithos_logo-square-icon-35.bmp\r
46 WizardImageBackColor=$FFFFFF\r
47 VersionInfoVersion={#MyAppVersion}\r
48 MinVersion=0,5.01sp3\r
49 ArchitecturesInstallIn64BitMode=x64\r
50 AppMutex=PITHOSMUTEX\r
51 OutputDir=Output\\r
52 SetupLogging=true\r
53 UninstallLogMode=append\r
54 VersionInfoCompany=GRNET\r
55 VersionInfoDescription=Pithos Plus\r
56 VersionInfoCopyright=(c) 2011-2012 GRNET\r
57 VersionInfoProductName=Pithos Plus\r
58 VersionInfoProductVersion=1\r
59 AppModifyPath="{app}\UninsHs.exe" /m0=AppId\r
60 CloseApplicationsFilter="*.*"\r
61 CloseApplications=true\r
62 RestartApplications=true\r
63 \r
64 [Languages]\r
65 Name: "english"; MessagesFile: "compiler:Default.isl"\r
66 Name: "greek"; MessagesFile: "compiler:Languages\Greek.isl"\r
67 Name: "german"; MessagesFile: "compiler:Languages\German.isl"\r
68 Name: "french"; MessagesFile: "compiler:Languages\French.isl"\r
69 Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl"\r
70 \r
71 [CustomMessages]\r
72 ;Web=You can visit our web site for more info\r
73 \r
74 [Tasks]\r
75 Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; Components: Documentation RequiredFiles\r
76 Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1; Components: Documentation RequiredFiles\r
77 ;Name: "visitweb"; Description: "{cm:Web}"; GroupDescription: "{cm:Web}"; Flags: unchecked; Components: Documentation RequiredFiles; Languages: english french german greek spanish\r
78 \r
79 [Files]\r
80 ; NOTE: Don't use "Flags: ignoreversion" on any shared system files\r
81 ; Executable\r
82 Source: "..\Pithos.Client.WPF\bin\Debug\PithosPlus.exe"; DestDir: {app}; Flags: restartreplace ignoreversion; Components: RequiredFiles; Languages: english french german spanish greek\r
83 Source: "..\Pithos.Client.WPF\bin\Debug\PithosPlus.exe.config"; DestDir: {app}; Flags: restartreplace ignoreversion; Components: RequiredFiles; Languages: english french german spanish greek\r
84 ; Appearance\r
85 ;Source: "Skin\ISSkin.dll"; DestDir: {app}; Flags: dontcopy\r
86 ;Source: "Skin\GRNETWhite.cjstyles"; DestDir: {tmp}; Flags: dontcopy\r
87 ; Repair/Modify\r
88 Source: "Tools\UninsHs.exe"; DestDir: {app}; Flags: restartreplace\r
89 ; Running Processes\r
90 ;Source: "Tools\IssProc.dll"; DestDir: {app}; Flags: restartreplace\r
91 ; DLL\r
92 Source: "..\Pithos.ShellExtensions\bin\x86\Debug\Pithos.ShellExtensions.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek; Check: not Is64BitInstallMode\r
93 Source: "..\Pithos.ShellExtensions\bin\x64\Debug\Pithos.ShellExtensions.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek; Check: Is64BitInstallMode\r
94 Source: "..\Pithos.Client.WPF\bin\Debug\AppLimit.NetSparkle.Net40.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
95 Source: "..\Pithos.Client.WPF\bin\Debug\AsyncCtpLibrary.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
96 Source: "..\Pithos.Client.WPF\bin\Debug\Caliburn.Micro.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
97 Source: "..\Pithos.Client.WPF\bin\Debug\Castle.ActiveRecord.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
98 Source: "..\Pithos.Client.WPF\bin\Debug\Castle.Components.Validator.dll"; DestDir: {app}; Flags: ignoreversion; Components: RequiredFiles; Languages: english french german spanish greek\r
99 Source: "..\Pithos.Client.WPF\bin\Debug\Castle.Core.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
100 Source: "..\Pithos.Client.WPF\bin\Debug\Hardcodet.Wpf.TaskbarNotification.dll"; DestDir: {app}; Flags: restartreplace ignoreversion; Components: RequiredFiles; Languages: english french german spanish greek\r
101 Source: "..\Pithos.Client.WPF\bin\Debug\Iesi.Collections.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
102 Source: "..\Pithos.Client.WPF\bin\Debug\log4net.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
103 Source: "..\Pithos.Client.WPF\bin\Debug\Newtonsoft.Json.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
104 Source: "..\Pithos.Client.WPF\bin\Debug\NHibernate.ByteCode.Castle.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
105 Source: "..\Pithos.Client.WPF\bin\Debug\NHibernate.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
106 Source: "..\Pithos.Client.WPF\bin\Debug\ParallelExtensionsExtras.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
107 Source: "..\Pithos.Client.WPF\bin\Debug\Pithos.Core.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
108 Source: "..\Pithos.Client.WPF\bin\Debug\Pithos.Interfaces.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
109 Source: "..\Pithos.Client.WPF\bin\Debug\Pithos.Network.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
110 Source: "..\Pithos.Client.WPF\bin\Debug\System.Data.SQLite.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
111 Source: "..\Pithos.Client.WPF\bin\Debug\System.Threading.Tasks.Dataflow.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
112 Source: "..\Pithos.Client.WPF\bin\Debug\System.Windows.Interactivity.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
113 Source: "..\Pithos.Client.WPF\bin\Debug\WPFToolkit.Extended.dll"; DestDir: {app}; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek\r
114 ; Tortoise\r
115 Source: "TortoiseOverlays\License.txt"; DestDir: {cf}/\TortoiseOverlays; Flags: ignoreversion; Components: RequiredFiles; Languages: english french german spanish greek\r
116 Source: "TortoiseOverlays\x86\TortoiseOverlays.dll"; DestDir: {cf}/\TortoiseOverlays; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek; Check: not Is64BitInstallMode\r
117 Source: "TortoiseOverlays\x64\TortoiseOverlays.dll"; DestDir: {cf}/\TortoiseOverlays; Flags: restartreplace; Components: RequiredFiles; Languages: english french german spanish greek; Check: Is64BitInstallMode\r
118 Source: "TortoiseOverlays\icons\XPStyle\*"; DestDir: {cf}/\TortoiseOverlays/icons/\XPStyle; Flags: ignoreversion; Components: RequiredFiles; Languages: english french german spanish greek\r
119 ;Redistributables\r
120 Source: "Redistributables\dotNetFx40_Client_setup.exe"; DestDir: {tmp}; Flags: deleteafterinstall\r
121 Source: "Redistributables\x86\msvcp100.dll"; DestDir: {sys}; Components: RequiredFiles; Languages: english french german spanish greek; Check: not Is64BitInstallMode\r
122 Source: "Redistributables\x86\msvcr100.dll"; DestDir: {sys}; Components: RequiredFiles; Languages: english french german spanish greek; Check: not Is64BitInstallMode\r
123 Source: "Redistributables\x64\msvcp100.dll"; DestDir: {syswow64}; Components: RequiredFiles; Languages: english french german spanish greek; Check: Is64BitInstallMode\r
124 Source: "Redistributables\x64\msvcr100.dll"; DestDir: {syswow64}; Components: RequiredFiles; Languages: english french german spanish greek; Check: Is64BitInstallMode\r
125 ; Wizard Images\r
126 Source: "Images\grnet-logo.bmp"; Flags: dontcopy\r
127 Source: "Images\account.bmp"; Flags: dontcopy\r
128 \r
129 [Icons]\r
130 Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"\r
131 Name: "{group}\{cm:ProgramOnTheWeb,{#MyAppName}}"; Filename: "{#MyAppURL}"\r
132 Name: "{group}\{cm:ProgramOnTheWeb,GRNET}"; Filename: "{#MyURL}"\r
133 ;Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"\r
134 Name: "{group}\Uninstall {#MyAppName}"; Filename: "{app}\UninsHs.exe"; Parameters: /u0=AppId\r
135 Name: "{commonstartup}\{#MyStartupName}"; Filename: "{app}\{#MyAppExeName}"; Parameters: "startup"\r
136 Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon\r
137 ;Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon\r
138 \r
139 [Run]\r
140 Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent\r
141 \r
142 [Registry]\r
143 ;Startup >>> Root: HKLM; Subkey: "SOFTWARE\Microsoft\Windows\CurrentVersion\Run"; ValueType: string; ValueName: "Pithos+"; ValueData: """{app}\{#MyAppExeName}"""; Flags: createvalueifdoesntexist uninsdeletevalue\r
144 Root: "HKCR"; Subkey: "*\shellex\ContextMenuHandlers\Pithos.FileContextMenu"; ValueType: string; ValueData: "{{b1f1405d-94a1-4692-b72f-fc8caf8b8700}"\r
145 \r
146 Root: "HKCR"; Subkey: "CLSID\{{0CFB4119-DABE-4E32-AB2D-2D41873BC599}"; ValueType: String; ValueData: "PithosContextMenu";  \r
147 Root: "HKCR"; Subkey: "CLSID\{{0CFB4119-DABE-4E32-AB2D-2D41873BC599}\InprocServer32"; ValueType: String; ValueData: "ThreadingModel";  \r
148 Root: "HKCR"; Subkey: "CLSID\{{0CFB4119-DABE-4E32-AB2D-2D41873BC599}\InprocServer32"; ValueType: String; ValueData: "{app}\PithosExtensions.dll";  \r
149 \r
150 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay";  \r
151 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\Implemented Categories";  \r
152 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\Implemented Categories\{{62C8FE65-4EBB-45E7-B440-6E39B2CDBF29}"; ValueType: String;  \r
153 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32"; ValueType: String; ValueData: "mscoree.dll";  \r
154 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
155 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay";  \r
156 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
157 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319"; Components: RequiredFiles\r
158 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32"; ValueType: String; ValueName: "ThreadingModel"; ValueData: "Both";  \r
159 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32\1.0.0.0"; ValueType: String;  \r
160 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
161 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay";  \r
162 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
163 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319"; Components: RequiredFiles\r
164 Root: "HKCR"; Subkey: "CLSID\{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}\ProgId"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay";  \r
165 \r
166 Root: "HKCR"; Subkey: "CLSID\{{11051AB4-D786-4248-BC6E-369F25EC74E4}"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.DeletedIconOverlay";  \r
167 Root: "HKCR"; Subkey: "CLSID\{{11051AB4-D786-4248-BC6E-369F25EC74E4}\Implemented Categories\{{62C8FE65-4EBB-45E7-B440-6E39B2CDBF29}";  \r
168 Root: "HKCR"; Subkey: "CLSID\{{11051AB4-D786-4248-BC6E-369F25EC74E4}\InprocServer32"; ValueType: String; ValueData: "mscoree.dll";  \r
169 Root: "HKCR"; Subkey: "CLSID\{{11051AB4-D786-4248-BC6E-369F25EC74E4}\InprocServer32"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
170 Root: "HKCR"; Subkey: "CLSID\{{11051AB4-D786-4248-BC6E-369F25EC74E4}\InprocServer32"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.DeletedIconOverlay";  \r
171 Root: "HKCR"; Subkey: "CLSID\{{11051AB4-D786-4248-BC6E-369F25EC74E4}\InprocServer32"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll"; Components: RequiredFiles\r
172 Root: "HKCR"; Subkey: "CLSID\{{11051AB4-D786-4248-BC6E-369F25EC74E4}\InprocServer32"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319";  \r
173 Root: "HKCR"; Subkey: "CLSID\{{11051AB4-D786-4248-BC6E-369F25EC74E4}\InprocServer32"; ValueType: String; ValueName: "ThreadingModel"; ValueData: "Both";  \r
174 Root: "HKCR"; Subkey: "CLSID\{{11051AB4-D786-4248-BC6E-369F25EC74E4}\ProgId"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.DeletedIconOverlay";  \r
175 \r
176 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay";  \r
177 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\Implemented Categories";  \r
178 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\Implemented Categories\{{62C8FE65-4EBB-45E7-B440-6E39B2CDBF29}"; ValueType: String;  \r
179 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32"; ValueType: String; ValueData: "mscoree.dll";  \r
180 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
181 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.NormalIconOverlay";  \r
182 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
183 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319";  Components: RequiredFiles\r
184 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32"; ValueType: String; ValueName: "ThreadingModel"; ValueData: "Both";  \r
185 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32\1.0.0.0"; ValueType: String;  \r
186 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
187 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.NormalIconOverlay";  \r
188 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
189 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319"; Components: RequiredFiles\r
190 Root: "HKCR"; Subkey: "CLSID\{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}\ProgId"; ValueType: String; ValueName: "(Default)"; ValueData: "Pithos.ShellExtensions.Overlays.NormalIconOverlay";  \r
191 \r
192 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay";  \r
193 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\Implemented Categories";  \r
194 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\Implemented Categories\{{62C8FE65-4EBB-45E7-B440-6E39B2CDBF29}"; ValueType: String;  \r
195 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32"; ValueType: String; ValueData: "mscoree.dll";  \r
196 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
197 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.ModifiedIconOverlay";  \r
198 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
199 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319"; Components: RequiredFiles\r
200 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32"; ValueType: String; ValueName: "ThreadingModel"; ValueData: "Both";  \r
201 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32\1.0.0.0"; ValueType: String;  \r
202 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
203 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.ModifiedIconOverlay";  \r
204 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
205 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319"; Components: RequiredFiles\r
206 Root: "HKCR"; Subkey: "CLSID\{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}\ProgId"; ValueType: String; ValueName: "(Default)"; ValueData: "Pithos.ShellExtensions.Overlays.ModifiedIconOverlay";  \r
207 \r
208 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay";  \r
209 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\Implemented Categories";  \r
210 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\Implemented Categories\{{62C8FE65-4EBB-45E7-B440-6E39B2CDBF29}"; ValueType: String;  \r
211 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32"; ValueType: String; ValueData: "mscoree.dll";  \r
212 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
213 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.ConflictIconOverlay";  \r
214 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
215 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319"; Components: RequiredFiles\r
216 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32"; ValueType: String; ValueName: "ThreadingModel"; ValueData: "Both";  \r
217 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32\1.0.0.0"; ValueType: String;  \r
218 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
219 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.ConflictIconOverlay";  \r
220 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
221 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319";  Components: RequiredFiles\r
222 Root: "HKCR"; Subkey: "CLSID\{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}\ProgId"; ValueType: String; ValueName: "(Default)"; ValueData: "Pithos.ShellExtensions.Overlays.ConflictIconOverlay";  \r
223 \r
224 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay";  \r
225 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\Implemented Categories";  \r
226 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\Implemented Categories\{{62C8FE65-4EBB-45E7-B440-6E39B2CDBF29}"; ValueType: String;  \r
227 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32"; ValueType: String; ValueData: "mscoree.dll";  \r
228 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
229 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Menus.FileContextMenu";  \r
230 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
231 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319"; Components: RequiredFiles\r
232 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32"; ValueType: String; ValueName: "ThreadingModel"; ValueData: "Both";  \r
233 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32\1.0.0.0"; ValueType: String;  \r
234 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
235 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Menus.FileContextMenu";  \r
236 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
237 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319"; Components: RequiredFiles\r
238 Root: "HKCR"; Subkey: "CLSID\{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}\ProgId"; ValueType: String; ValueName: "(Default)"; ValueData: "Pithos.ShellExtensions.Menus.FileContextMenu";  \r
239 \r
240 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay";  \r
241 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\Implemented Categories";  \r
242 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\Implemented Categories\{{62C8FE65-4EBB-45E7-B440-6E39B2CDBF29}"; ValueType: String;  \r
243 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32"; ValueType: String; ValueName: "(Default)"; ValueData: "mscoree.dll";  \r
244 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
245 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.AddedIcodOverlay";  \r
246 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
247 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319"; Components: RequiredFiles\r
248 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32"; ValueType: String; ValueName: "ThreadingModel"; ValueData: "Both";  \r
249 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "(Default)";  \r
250 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Assembly"; ValueData: "Pithos.ShellExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2cc55badaa91f4de";  \r
251 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "Class"; ValueData: "Pithos.ShellExtensions.Overlays.AddedIcodOverlay";  \r
252 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "CodeBase"; ValueData: "{app}\Pithos.ShellExtensions.dll";  \r
253 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\InprocServer32\1.0.0.0"; ValueType: String; ValueName: "RuntimeVersion"; ValueData: "v4.0.30319"; Components: RequiredFiles\r
254 Root: "HKCR"; Subkey: "CLSID\{{EAD1663B-9A03-4E92-80D3-B01B981CD828}\ProgId"; ValueType: String; ValueName: "(Default)"; ValueData: "Pithos.ShellExtensions.Overlays.AddedIcodOverlay";  \r
255   \r
256 Root: "HKCR"; Subkey: "Directory\Background\shellex\ContextMenuHandlers\Pithos.FileContextMenu"; ValueType: String; ValueData: "{{b1f1405d-94a1-4692-b72f-fc8caf8b8700}";  \r
257 Root: "HKCR"; Subkey: "Directory\shellex\ContextMenuHandlers\Pithos.FileContextMenu"; ValueType: String; ValueData: "{{b1f1405d-94a1-4692-b72f-fc8caf8b8700}";  \r
258 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.FileContextMenu"; ValueType: String; ValueData: "Pithos.ShellExtensions.Menus.FileContextMenu";  \r
259 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.FileContextMenu\CLSID"; ValueType: String; ValueData: "{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}";  \r
260 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Menus.FileContextMenu"; ValueType: String; ValueData: "Pithos.ShellExtensions.Menus.FileContextMenu";  \r
261 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Menus.FileContextMenu\CLSID"; ValueType: String; ValueData: "{{B1F1405D-94A1-4692-B72F-FC8CAF8B8700}";  \r
262 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.AddedIconOverlay"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.AddedIconOverlay";  \r
263 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.AddedIconOverlay\CLSID"; ValueType: String; ValueData: "{{EAD1663B-9A03-4E92-80D3-B01B981CD828}";  \r
264 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.ConflictIconOverlay"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.ConflictIconOverlay";  \r
265 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.ConflictIconOverlay\CLSID"; ValueType: String; ValueData: "{{3EFA16FC-C6B6-4673-BFEC-BD9518F1EFCE}";  \r
266 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.DeletedIconOverlay"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.DeletedIconOverlay";  \r
267 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.DeletedIconOverlay\CLSID"; ValueType: String; ValueData: "{{11051AB4-D786-4248-BC6E-369F25EC74E4}";  \r
268 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.ModifiedIconOverlay"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.ModifiedIconOverlay";  \r
269 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.ModifiedIconOverlay\CLSID"; ValueType: String; ValueData: "{{3D05BCB0-733B-49CD-B340-9D79C17C73CC}";  \r
270 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.NormalIconOverlay"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.NormalIconOverlay";  \r
271 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.NormalIconOverlay\CLSID"; ValueType: String; ValueData: "{{1941D8CA-2727-491B-BC03-9E8CA4FE972B}";  \r
272 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay";  \r
273 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.UnversionedIconOverlay\CLSID"; ValueType: String; ValueData: "{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}";  \r
274 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.UnversionedOverlay"; ValueType: String; ValueData: "Pithos.ShellExtensions.Overlays.UnversionedOverlay";  \r
275 Root: "HKCR"; Subkey: "Pithos.ShellExtensions.Overlays.UnversionedOverlay\CLSID"; ValueType: String; ValueData: "{{10CF08FE-1252-4AAB-BE78-971B0C5E8AE0}";  \r
276 ;\r
277 Root: "HKCU"; Subkey: "Software\{#Manufacturer}";  \r
278 Root: "HKLM"; Subkey: "Software\{#Manufacturer}\Pithos"; ValueType: dword; ValueName: "ShowOnlyInExplorer"; ValueData: "0";  \r
279 ;\r
280 Root: "HKLM"; Subkey: "Software\TortoiseOverlays\Added"; ValueType: String; ValueName: "Pithos"; ValueData: "{{ead1663b-9a03-4e92-80d3-b01b981cd828}";  \r
281 Root: "HKLM"; Subkey: "Software\TortoiseOverlays\Conflict"; ValueType: String; ValueName: "Pithos"; ValueData: "{{3efa16fc-c6b6-4673-bfec-bd9518f1efce}";  \r
282 Root: "HKLM"; Subkey: "Software\TortoiseOverlays\Deleted"; ValueType: String; ValueName: "Pithos"; ValueData: "{{11051AB4-D786-4248-BC6E-369F25EC74E4}";  \r
283 Root: "HKLM"; Subkey: "Software\TortoiseOverlays\Modified"; ValueType: String; ValueName: "Pithos"; ValueData: "{{3d05bcb0-733b-49cd-b340-9d79c17c73cc}"; Components: RequiredFiles\r
284 Root: "HKLM"; Subkey: "Software\TortoiseOverlays\Normal"; ValueType: String; ValueName: "Pithos"; ValueData: "{{1941d8ca-2727-491b-bc03-9e8ca4fe972b}";  \r
285 Root: "HKLM"; Subkey: "Software\TortoiseOverlays\Unversioned"; ValueType: String; ValueName: "Pithos"; ValueData: "{{10cf08fe-1252-4aab-be78-971b0c5e8ae0}";  \r
286 \r
287 Root: "HKLM"; Subkey: "Software\{#Manufacturer}\{#MyAppName}\{{56EDB812-2F78-060D-D5D1-6AA27B1165A5}"; ValueType: String; ValueData: "_D9DCD31A441A4B7B845F98CB12D6BFBA"; Components: RequiredFiles\r
288 \r
289 [Components]\r
290 Name: "RequiredFiles"; Description: "Required Files"; Types: Advanced Default; Flags: checkablealone fixed; Languages: english french german greek spanish\r
291 Name: "Documentation"; Description: "Documentation"; Types: Default Advanced; Flags: dontinheritcheck; Languages: english french german greek spanish\r
292 \r
293 [Types]\r
294 Name: "Default"; Description: "Default Installation"; Languages: english french german greek spanish\r
295 Name: "Advanced"; Description: "Custom Installation"; Flags: iscustom; Languages: english german french greek spanish\r
296 \r
297 [Dirs]\r
298 Name: "{cf}/\TortoiseOverlays"; Components: RequiredFiles; Tasks: desktopicon; Languages: english french german greek spanish\r
299 Name: "{cf}/\TortoiseOverlays/\icons"\r
300 Name: "{cf}/\TortoiseOverlays/icons/\XPStyle"\r
301 \r
302 \r
303 [Code]\r
304 const \r
305   WM_QUIT = 18;\r
306   MyAppMutex = 'PITHOSMUTEX';\r
307   XMLURL = 'https://code.grnet.gr/projects/pithos-ms-client/repository/revisions/master/raw/trunk/Pithos.Installer/versioninfo.xml';\r
308   XMLUpdate = 'MYLatest.xml';\r
309   \r
310 var \r
311     dotNET40Missing: Boolean;\r
312            IsUpdate: Boolean;\r
313           UsagePage: TOutputMsgWizardPage;\r
314            Wz1, Wz2: TOutputMsgWizardPage;\r
315              ChkBox: TCheckBox;\r
316           LicenseID: Integer;  \r
317  InstallBottomPanel: TPanel;          \r
318 InnerNotebookBounds: TRect;\r
319 OuterNotebookBounds: TRect;\r
320 \r
321 // Importing ShowWindow Windows API from User32.DLL\r
322 function ShowWindow(hWnd: Integer; uType: Integer): Integer;\r
323 external 'ShowWindow@user32.dll stdcall';\r
324 \r
325 function Rect(const ALeft, ATop, ARight, ABottom: Integer): TRect;\r
326 begin\r
327   Result.Left := ALeft;\r
328   Result.Top := ATop;\r
329   Result.Bottom := ABottom;\r
330   Result.Right := ARight;\r
331 end;\r
332 \r
333 function GetBoundsRect(AControl: TControl): TRect;\r
334 begin\r
335   Result.Left := AControl.Left;\r
336   Result.Top := AControl.Top;\r
337   Result.Right := AControl.Left + AControl.Width;\r
338   Result.Bottom := AControl.Top + AControl.Height;\r
339 end;\r
340 \r
341 procedure SetBoundsRect(AControl: TControl; const ARect: TRect);\r
342 begin\r
343   AControl.Left := ARect.Left;\r
344   AControl.Top := ARect.Top;\r
345   AControl.Width := ARect.Right - ARect.Left\r
346   AControl.Height := ARect.Bottom - ARect.Top;\r
347 end;\r
348 \r
349 procedure CenterHorizontally(ASource, ATarget: TControl);\r
350 begin\r
351   ATarget.Left := (ASource.Width - ATarget.Width) div 2;\r
352 end;\r
353 \r
354 procedure CenterVertically(ASource, ATarget: TControl);\r
355 begin\r
356   ATarget.Top := (ASource.Height - ATarget.Height) div 2;  \r
357 end;\r
358 \r
359 function IsDotNetDetected(version: string; service: cardinal): boolean;\r
360 //    'v1.1.4322'     .NET Framework 1.1\r
361 //    'v2.0.50727'    .NET Framework 2.0\r
362 //    'v3.0'          .NET Framework 3.0\r
363 //    'v3.5'          .NET Framework 3.5\r
364 //    'v4\Client'     .NET Framework 4.0 Client Profile\r
365 //    'v4\Full'       .NET Framework 4.0 Full Installation\r
366 // service pack\r
367 //    0               No service packs required\r
368 //    1, 2, etc.      Service pack 1, 2, etc. required\r
369 //    if not IsDotNetDetected('v4\Client', 0) then begin\r
370 var\r
371     key: string;\r
372     install, serviceCount: cardinal;\r
373     success: boolean;\r
374    \r
375 begin\r
376     key := 'SOFTWARE\Microsoft\NET Framework Setup\NDP\' + version;\r
377     // .NET 3.0 uses value InstallSuccess in subkey Setup\r
378     if Pos('v3.0', version) = 1 then begin\r
379         success := RegQueryDWordValue(HKLM, key + '\Setup', 'InstallSuccess', install);\r
380     end else begin\r
381         success := RegQueryDWordValue(HKLM, key, 'Install', install);\r
382     end;\r
383     // .NET 4.0 uses value Servicing instead of SP\r
384     if Pos('v4', version) = 1 then begin\r
385         success := success and RegQueryDWordValue(HKLM, key, 'Servicing', serviceCount);\r
386     end else begin\r
387         success := success and RegQueryDWordValue(HKLM, key, 'SP', serviceCount);\r
388     end;\r
389     result := success and (install = 1) and (serviceCount >= service);\r
390 end;\r
391 \r
392 function NextButtonClick(CurPage: Integer): Boolean;\r
393 var\r
394   hWnd: Integer;\r
395   sModuleName: String;\r
396   nCode: Integer;  {IssFindModule returns: 0 if no module found; 1 if cancel pressed; 2 if ignore pressed; -1 if an error occured }\r
397 begin\r
398   Result := true;\r
399 \r
400  if CurPage = wpReady then\r
401    begin\r
402       Result := false;\r
403             \r
404       hWnd := StrToInt(ExpandConstant('{wizardhwnd}'));                     { get main wizard handle }\r
405      if nCode=1 then  begin                                                 { cancel pressed or files-in-use window closed }\r
406           PostMessage (WizardForm.Handle, $0010, 0, 0);                     { quit setup, $0010=WM_CLOSE }\r
407      end else if (nCode=0) or (nCode=2) then begin                          { no module found or ignored pressed}\r
408           Result := true;                                                   { continue setup  }\r
409      end;\r
410   end;\r
411 end;\r
412 \r
413 function InitializeSetup(): Boolean;\r
414 begin    \r
415   // Test the presence of .NET 4.0\r
416   if (not(RegKeyExists(HKLM, 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4'))) then\r
417       dotNET40Missing := True;\r
418     \r
419   Result := True;\r
420 \r
421   //Remove Old Database\r
422   DeleteFile(ExpandConstant('{localappdata}')+'\GRNET\PITHOS\pithos.db');\r
423 end;\r
424 \r
425 procedure DeinitializeSetup();\r
426 begin\r
427   //Hide Window widget\r
428 end;\r
429 \r
430 function ShouldInstalldotNET40(): Boolean;\r
431 begin\r
432     Result := dotNET40Missing;\r
433 end;\r
434 \r
435 procedure CurPageChanged(CurPageID: Integer);\r
436 begin\r
437   if CurPageID = wpInstalling then\r
438     begin\r
439     IsUpdate := FileExists(ExpandConstant('{app}\{#MyAppExeName}'));\r
440     //  SetBoundsRect(WizardForm.OuterNotebook, Rect(OuterNotebookBounds.Left, \r
441     //  OuterNotebookBounds.Top, OuterNotebookBounds.Right, WizardForm.ClientHeight));\r
442     //  SetBoundsRect(WizardForm.InnerNotebook, Rect(OuterNotebookBounds.Left,\r
443     //  WizardForm.Bevel1.Top + WizardForm.Bevel1.Height, OuterNotebookBounds.Right, \r
444     //  WizardForm.ClientHeight));          \r
445 \r
446     //  CenterHorizontally(WizardForm.InstallingPage, InstallBackground);\r
447     //  WizardForm.ProgressGauge.Width := InstallBottomPanel.Width - 16;\r
448     end;\r
449   if CurPageID = LicenseID then\r
450     Wizardform.NextButton.Enabled := False;\r
451   if (Pos('/SP-', UpperCase(GetCmdTail)) > 0) and (CurPageID = wpSelectComponents) then\r
452     WizardForm.BackButton.Visible := False;\r
453 end;\r
454 \r
455 function NotAnUpdate: Boolean;\r
456 begin\r
457   result := not IsUpdate;\r
458 end;\r
459 \r
460 procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);\r
461 var\r
462 mRes : integer;\r
463 begin\r
464   case CurUninstallStep of\r
465     usUninstall:\r
466       begin\r
467         mRes := MsgBox('Do you want to remove your settings?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2)\r
468         if mRes = IDYES then\r
469           begin            \r
470             DelTree(ExpandConstant('{localappdata}')+'\GRNET\PithosPlus.exe_StrongName_1vmy3hmn3mscykecwcnmpvno4d4mqi52',true,true,true);     \r
471             DelTree(ExpandConstant('{localappdata}')+'\GRNET\PITHOS\',true,true,true);\r
472           End\r
473         else\r
474           MsgBox ('Settings will not be removed', mbInformation, MB_OK);        \r
475       end;\r
476   end;\r
477 end;\r
478 \r
479 procedure BitmapImageOnClick(Sender: TObject);\r
480 var\r
481   ErrCode: integer;\r
482 begin\r
483   ShellExec('open', 'http://pithos.grnet.gr','', '', SW_SHOW, ewNoWait, ErrCode);\r
484 end;\r
485 \r
486 procedure LicenseOnClick(Sender: TObject);\r
487 begin\r
488   if chkBox.checked Then\r
489   Wizardform.NextButton.Enabled := True else\r
490   Wizardform.NextButton.Enabled := False;  \r
491 end;\r
492 \r
493 procedure CreateTheWizardPages;\r
494 var\r
495   Page: TWizardPage;\r
496   Button, FormButton: TNewButton;\r
497   BitmapImage,BitmapImage1: TBitmapImage;\r
498   BitmapFileName: String;\r
499   Memo: TMemo;\r
500   LabelWz: TLabel;\r
501 \r
502 begin\r
503   Page := CreateCustomPage(wpWelcome, 'GRNET Pithos+ Dev Build {#MyAppVersion}', 'Software License');\r
504   Page.Surface.Color := clWhite;\r
505 \r
506   BitmapFileName := ExpandConstant('{tmp}\grnet-logo.bmp');\r
507   ExtractTemporaryFile(ExtractFileName(BitmapFileName));  \r
508   BitmapImage := TBitmapImage.Create(Page);\r
509   BitmapImage.AutoSize := True;\r
510   BitmapImage.Bitmap.LoadFromFile(BitmapFileName);\r
511   BitmapImage.Cursor := crHand;\r
512   BitmapImage.Left := (Page.Surfacewidth - BitmapImage.Width) / 2;\r
513   BitmapImage.Top := Page.Surface.Top;\r
514   BitmapImage.OnClick := @BitmapImageOnClick;\r
515   BitmapImage.Parent := Page.Surface;\r
516   \r
517   Memo := TMemo.Create(Page);\r
518   Memo.Top := BitmapImage.Height;\r
519   Memo.Width := Page.SurfaceWidth;\r
520   Memo.Height := Page.SurfaceHeight - (BitmapImage.Height + 20);\r
521   Memo.ScrollBars := ssVertical;\r
522   Memo.Text := 'This software is provided by GRNET S.A. "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall GRNET S.A. or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.';\r
523   Memo.Parent := Page.Surface;\r
524   \r
525   ChkBox := TCheckBox.Create(Page);\r
526   ChkBox.Top := BitmapImage.Height + Memo.Height;\r
527   ChkBox.Width := Page.SurfaceWidth;\r
528   ChkBox.Caption := 'I agree with the above terms';\r
529   ChkBox.Checked := cbUnChecked;\r
530   chkBox.OnClick := @LicenseOnClick;\r
531   ChkBox.Parent := Page.Surface;\r
532   LicenseID := Page.ID;\r
533   \r
534   Page := CreateCustomPage(wpInfoAfter, 'First Steps', 'Setup your account');\r
535   BitmapFileName := ExpandConstant('{tmp}\account.bmp');\r
536   ExtractTemporaryFile(ExtractFileName(BitmapFileName));\r
537 \r
538   Page.Surface.Color := clWhite;\r
539 \r
540   LabelWz := Tlabel.Create(Page);\r
541   LabelWz.Top := Page.Surface.Top;\r
542   LabelWz.Caption := 'To setup your account right click on the Pithos+ icon in the taskbar.';\r
543   LabelWz.Parent := Page.Surface;\r
544   \r
545   BitmapImage1 := TBitmapImage.Create(Page);\r
546   BitmapImage1.width := Page.SurfaceWidth;\r
547   BitmapImage1.height := Page.SurfaceHeight;\r
548   BitmapImage1.Bitmap.LoadFromFile(BitmapFileName);\r
549   BitmapImage1.Left := 0;\r
550   BitmapImage1.Top := Page.Surface.Top + LabelWz.Height;\r
551   BitmapImage1.Parent := Page.Surface;\r
552 end;\r
553 \r
554 procedure InitializeWizard;\r
555 var\r
556 winHwnd: longint;\r
557 retVal : boolean;\r
558 strProg: string;\r
559 begin\r
560   winHwnd := FindWindowByClassName('{MyAppMutex}');\r
561   if winHwnd<>0 then begin { no module found or ignore pressed}\r
562       msgbox('mutexfound', mbInformation,mb_OK);\r
563       postmessage(winHwnd,WM_QUIT,0,0);\r
564    //abort();\r
565   end;\r
566   CreateTheWizardPages; \r
567   WizardForm.MainPanel.Color := clWhite;\r
568   WizardForm.InstallingPage.Color := clWhite;\r
569   WizardForm.PreparingPage.Color := clWhite;\r
570   WizardForm.ReadyPage.Color := clWhite;\r
571   WizardForm.InfoAfterPage.Color := clWhite;\r
572   WizardForm.WelcomePage.Color := clWhite;\r
573   WizardForm.LicensePage.Color := clWhite;\r
574   WizardForm.FinishedPage.Color := clWhite;\r
575   WizardForm.SelectDirPage.Color := clWhite;\r
576   WizardForm.InnerPage.Color := clWhite;\r
577   WizardForm.UserInfoPage.Color := clWhite;\r
578   WizardForm.SelectComponentsPage.Color := clWhite;\r
579   WizardForm.SelectProgramGroupPage.Color := clWhite;\r
580   WizardForm.SelectTasksPage.Color := clWhite;\r
581   WizardForm.ReadyMemo.Color := clWhite;\r
582   WizardForm.TasksList.Color := clWhite;\r
583 \r
584   InstallBottomPanel := TPanel.Create(WizardForm);\r
585   InstallBottomPanel.Parent := WizardForm.InstallingPage;\r
586   InstallBottomPanel.BevelOuter := bvNone;\r
587   InstallBottomPanel.Align := alBottom;\r
588   InstallBottomPanel.Caption := '';\r
589   InstallBottomPanel.Color := clWhite;\r
590   InstallBottomPanel.Height := 79;\r
591   InstallBottomPanel.ParentBackground := False;\r
592 \r
593   InnerNotebookBounds := GetBoundsRect(WizardForm.InnerNotebook);\r
594   OuterNotebookBounds := GetBoundsRect(WizardForm.OuterNotebook);\r
595 end;\r
596 \r
597 function ShouldSkipPage(CurPage: Integer): Boolean;\r
598     begin\r
599       if Pos('/SP-', UpperCase(GetCmdTail)) > 0 then\r
600         case CurPage of\r
601           wpLicense, wpPassword, wpInfoBefore, wpUserInfo,\r
602           wpSelectDir, wpSelectProgramGroup, wpInfoAfter:\r
603             Result := True;\r
604         end;\r
605     end;\r
606     \r
607 [Run]\r
608 ;Kill Running Task from older versions\r
609 Filename: cmd; parameters: /c taskkill /f /im pithos.exe; Flags: runhidden\r
610 Filename: cmd; parameters: /c taskkill /f /im pithos.client.WPF.exe; Flags: runhidden\r
611 ;Launch Redist\r
612 Filename: {tmp}\dotNetFx40_Client_setup.exe; Description: Install Microsoft .Net Framework 4.0; Parameters: /q /noreboot; Flags: skipifdoesntexist; Check: ShouldInstalldotNET40\r
613 Filename: {app}\UninsHs.exe; Parameters: /r0=AppId,{language},{srcexe}; Flags: runminimized