# HG changeset patch
# User Rock Hymas <r...@fogcreek.com>
# Date 1253127376 14400
# Branch stable
# Node ID d5815506564302945d2263232d5be61608e63683
# Parent  69a4647178107528dad3cdb8e18c7dccfe7f8840
installer: Register 32 bit shell extensions 64 bit machines for use in 32 bit 
shell processes

diff --git a/contrib/win32/mercurial.iss b/contrib/win32/mercurial.iss
--- a/contrib/win32/mercurial.iss
+++ b/contrib/win32/mercurial.iss
@@ -82,6 +82,7 @@
 Source: icons\thg_logo.ico; DestDir: {app}
 Source: ..\misc\hgbook.pdf; DestDir: {app}/docs; Components: hgbook
 Source: ..\misc\ThgShellx86.dll; DestDir: {app}; DestName: ThgShell.dll; 
Check: not Is64BitInstallMode; Flags: ignoreversion restartreplace 
uninsrestartdelete; Components: shell
+Source: ..\misc\ThgShellx86.dll; DestDir: {app}; DestName: ThgShellx86.dll; 
Check: Is64BitInstallMode; Flags: ignoreversion restartreplace 
uninsrestartdelete; Components: shell
 Source: ..\misc\ThgShellx64.dll; DestDir: {app}; DestName: ThgShell.dll; 
Check: Is64BitInstallMode; Flags: ignoreversion restartreplace 
uninsrestartdelete; Components: shell
 
 [INI]
@@ -103,7 +104,7 @@
 ;Filename: {tmp}\vcredist_x86.exe; Parameters: /q; Check: ShouldInstallVCPPSP1 
and not Is64BitInstallMode
 ;Filename: {tmp}\vcredist_x64.exe; Parameters: /q; Check: ShouldInstallVCPPSP1 
and Is64BitInstallMode
 Filename: {app}\add_path.exe; Parameters: {app}; StatusMsg: Adding the 
installation path to the search path...
-Filename: msiexec.exe; Parameters: "/i 
""{app}\TortoiseOverlays\TortoiseOverlays-1.0.6.16523-win32.msi"" /qn 
/norestart ALLUSERS=1"; Check: not Is64BitInstallMode; Components: shell; 
StatusMsg: Installing TortoiseOverlays.dll ...
+Filename: msiexec.exe; Parameters: "/i 
""{app}\TortoiseOverlays\TortoiseOverlays-1.0.6.16523-win32.msi"" /qn 
/norestart ALLUSERS=1"; Components: shell; StatusMsg: Installing 
TortoiseOverlays.dll ...
 Filename: msiexec.exe; Parameters: "/i 
""{app}\TortoiseOverlays\TortoiseOverlays-1.0.6.16523-x64.msi"" /qn /norestart 
ALLUSERS=1"; Check: Is64BitInstallMode; Components: shell; StatusMsg: 
Installing TortoiseOverlays.dll ...
 
 [UninstallRun]
diff --git a/contrib/win32/registry.iss b/contrib/win32/registry.iss
--- a/contrib/win32/registry.iss
+++ b/contrib/win32/registry.iss
@@ -5,8 +5,12 @@
 ; register TortoiseHg config info
 Root: HKLM; Subkey: Software\TortoiseHgShell;  Flags: uninsdeletekey; 
Components: shell
 Root: HKLM; Subkey: Software\TortoiseHgShell;  ValueType: string; ValueName: ; 
ValueData: {app}; Components: shell
+Root: HKLM32; Subkey: Software\TortoiseHgShell;  Check: Is64BitInstallMode; 
Flags: uninsdeletekey; Components: shell
+Root: HKLM32; Subkey: Software\TortoiseHgShell;  Check: Is64BitInstallMode; 
ValueType: string; ValueName: ; ValueData: {app}; Components: shell
 Root: HKLM; Subkey: Software\TortoiseHg;  Flags: uninsdeletekey
 Root: HKLM; Subkey: Software\TortoiseHg;  ValueType: string; ValueName: ; 
ValueData: {app}
+Root: HKLM32; Subkey: Software\TortoiseHg;  Check: Is64BitInstallMode; Flags: 
uninsdeletekey
+Root: HKLM32; Subkey: Software\TortoiseHg;  Check: Is64BitInstallMode; 
ValueType: string; ValueName: ; ValueData: {app}
 
 ; overlay handler COM controls
 ;    Normal
@@ -14,53 +18,89 @@
 Root: HKCR; Subkey: CLSID\{{B456DBA0-7BF4-478c-937A-05130C2C212E}; ValueType: 
string; ValueName: ; ValueData: TortoiseHg; Components: shell
 Root: HKCR; Subkey: 
CLSID\{{B456DBA0-7BF4-478c-937A-05130C2C212E}\InProcServer32; ValueType: 
string; ValueName: ; ValueData: {app}\THgShell.dll; Components: shell
 Root: HKCR; Subkey: 
CLSID\{{B456DBA0-7BF4-478c-937A-05130C2C212E}\InProcServer32; ValueType: 
string; ValueName: ThreadingModel; ValueData: Apartment; Components: shell
+Root: HKCR32; Subkey: CLSID\{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Check: 
Is64BitInstallMode; Flags: uninsdeletekey; Components: shell
+Root: HKCR32; Subkey: CLSID\{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: TortoiseHg; 
Components: shell
+Root: HKCR32; Subkey: 
CLSID\{{B456DBA0-7BF4-478c-937A-05130C2C212E}\InProcServer32; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: 
{app}\THgShellx86.dll; Components: shell
+Root: HKCR32; Subkey: 
CLSID\{{B456DBA0-7BF4-478c-937A-05130C2C212E}\InProcServer32; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ThreadingModel; ValueData: 
Apartment; Components: shell
 
 ;    Added
 Root: HKCR; Subkey: CLSID\{{B456DBA1-7BF4-478c-937A-05130C2C212E}; Flags: 
uninsdeletekey; Components: shell
 Root: HKCR; Subkey: CLSID\{{B456DBA1-7BF4-478c-937A-05130C2C212E}; ValueType: 
string; ValueName: ; ValueData: TortoiseHg; Components: shell
 Root: HKCR; Subkey: 
CLSID\{{B456DBA1-7BF4-478c-937A-05130C2C212E}\InProcServer32; ValueType: 
string; ValueName: ; ValueData: {app}\THgShell.dll; Components: shell
 Root: HKCR; Subkey: 
CLSID\{{B456DBA1-7BF4-478c-937A-05130C2C212E}\InProcServer32; ValueType: 
string; ValueName: ThreadingModel; ValueData: Apartment; Components: shell
+Root: HKCR32; Subkey: CLSID\{{B456DBA1-7BF4-478c-937A-05130C2C212E}; Check: 
Is64BitInstallMode; Flags: uninsdeletekey; Components: shell
+Root: HKCR32; Subkey: CLSID\{{B456DBA1-7BF4-478c-937A-05130C2C212E}; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: TortoiseHg; 
Components: shell
+Root: HKCR32; Subkey: 
CLSID\{{B456DBA1-7BF4-478c-937A-05130C2C212E}\InProcServer32; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: 
{app}\THgShellx86.dll; Components: shell
+Root: HKCR32; Subkey: 
CLSID\{{B456DBA1-7BF4-478c-937A-05130C2C212E}\InProcServer32; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ThreadingModel; ValueData: 
Apartment; Components: shell
 
 ;   Modified
 Root: HKCR; Subkey: CLSID\{{B456DBA2-7BF4-478c-937A-05130C2C212E}; Flags: 
uninsdeletekey; Components: shell
 Root: HKCR; Subkey: CLSID\{{B456DBA2-7BF4-478c-937A-05130C2C212E}; ValueType: 
string; ValueName: ; ValueData: TortoiseHg; Components: shell
 Root: HKCR; Subkey: 
CLSID\{{B456DBA2-7BF4-478c-937A-05130C2C212E}\InProcServer32; ValueType: 
string; ValueName: ; ValueData: {app}\THgShell.dll; Components: shell
 Root: HKCR; Subkey: 
CLSID\{{B456DBA2-7BF4-478c-937A-05130C2C212E}\InProcServer32; ValueType: 
string; ValueName: ThreadingModel; ValueData: Apartment; Components: shell
+Root: HKCR32; Subkey: CLSID\{{B456DBA2-7BF4-478c-937A-05130C2C212E}; Check: 
Is64BitInstallMode; Flags: uninsdeletekey; Components: shell
+Root: HKCR32; Subkey: CLSID\{{B456DBA2-7BF4-478c-937A-05130C2C212E}; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: TortoiseHg; 
Components: shell
+Root: HKCR32; Subkey: 
CLSID\{{B456DBA2-7BF4-478c-937A-05130C2C212E}\InProcServer32; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: 
{app}\THgShellx86.dll; Components: shell
+Root: HKCR32; Subkey: 
CLSID\{{B456DBA2-7BF4-478c-937A-05130C2C212E}\InProcServer32; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ThreadingModel; ValueData: 
Apartment; Components: shell
 
 ;   Unversioned
 Root: HKCR; Subkey: CLSID\{{B456DBA6-7BF4-478c-937A-05130C2C212E}; Flags: 
uninsdeletekey; Components: shell
 Root: HKCR; Subkey: CLSID\{{B456DBA6-7BF4-478c-937A-05130C2C212E}; ValueType: 
string; ValueName: ; ValueData: TortoiseHg; Components: shell
 Root: HKCR; Subkey: 
CLSID\{{B456DBA6-7BF4-478c-937A-05130C2C212E}\InProcServer32; ValueType: 
string; ValueName: ; ValueData: {app}\THgShell.dll; Components: shell
 Root: HKCR; Subkey: 
CLSID\{{B456DBA6-7BF4-478c-937A-05130C2C212E}\InProcServer32; ValueType: 
string; ValueName: ThreadingModel; ValueData: Apartment; Components: shell
+Root: HKCR32; Subkey: CLSID\{{B456DBA6-7BF4-478c-937A-05130C2C212E}; Check: 
Is64BitInstallMode; Flags: uninsdeletekey; Components: shell
+Root: HKCR32; Subkey: CLSID\{{B456DBA6-7BF4-478c-937A-05130C2C212E}; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: TortoiseHg; 
Components: shell
+Root: HKCR32; Subkey: 
CLSID\{{B456DBA6-7BF4-478c-937A-05130C2C212E}\InProcServer32; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: 
{app}\THgShellx86.dll; Components: shell
+Root: HKCR32; Subkey: 
CLSID\{{B456DBA6-7BF4-478c-937A-05130C2C212E}\InProcServer32; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ThreadingModel; ValueData: 
Apartment; Components: shell
 
 ; The actual icon overlay handlers for Explorer
 Root: HKLM; Subkey: Software\TortoiseOverlays\Normal; ValueType: string; 
ValueName: TortoiseHg; ValueData: {{B456DBA0-7BF4-478c-937A-05130C2C212E}; 
Components: shell
 Root: HKLM; Subkey: Software\TortoiseOverlays\Added; ValueType: string; 
ValueName: TortoiseHg; ValueData: {{B456DBA1-7BF4-478c-937A-05130C2C212E}; 
Components: shell
 Root: HKLM; Subkey: Software\TortoiseOverlays\Modified; ValueType: string; 
ValueName: TortoiseHg; ValueData: {{B456DBA2-7BF4-478c-937A-05130C2C212E}; 
Components: shell
 Root: HKLM; Subkey: Software\TortoiseOverlays\Unversioned; ValueType: string; 
ValueName: TortoiseHg; ValueData: {{B456DBA6-7BF4-478c-937A-05130C2C212E}; 
Components: shell
+Root: HKLM32; Subkey: Software\TortoiseOverlays\Normal; Check: 
Is64BitInstallMode; ValueType: string; ValueName: TortoiseHg; ValueData: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Components: shell
+Root: HKLM32; Subkey: Software\TortoiseOverlays\Added; Check: 
Is64BitInstallMode; ValueType: string; ValueName: TortoiseHg; ValueData: 
{{B456DBA1-7BF4-478c-937A-05130C2C212E}; Components: shell
+Root: HKLM32; Subkey: Software\TortoiseOverlays\Modified; Check: 
Is64BitInstallMode; ValueType: string; ValueName: TortoiseHg; ValueData: 
{{B456DBA2-7BF4-478c-937A-05130C2C212E}; Components: shell
+Root: HKLM32; Subkey: Software\TortoiseOverlays\Unversioned; Check: 
Is64BitInstallMode; ValueType: string; ValueName: TortoiseHg; ValueData: 
{{B456DBA6-7BF4-478c-937A-05130C2C212E}; Components: shell
 
 ; Make them approved by administrator
 Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Shell 
Extensions\Approved; ValueType: string; ValueName: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; ValueData: TortoiseHg; Flags: 
uninsdeletevalue; Components: shell
 Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Shell 
Extensions\Approved; ValueType: string; ValueName: 
{{B456DBA1-7BF4-478c-937A-05130C2C212E}; ValueData: TortoiseHg; Flags: 
uninsdeletevalue; Components: shell
 Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Shell 
Extensions\Approved; ValueType: string; ValueName: 
{{B456DBA2-7BF4-478c-937A-05130C2C212E}; ValueData: TortoiseHg; Flags: 
uninsdeletevalue; Components: shell
 Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Shell 
Extensions\Approved; ValueType: string; ValueName: 
{{B456DBA6-7BF4-478c-937A-05130C2C212E}; ValueData: TortoiseHg; Flags: 
uninsdeletevalue; Components: shell
+Root: HKLM32; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Shell 
Extensions\Approved; Check: Is64BitInstallMode; ValueType: string; ValueName: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; ValueData: TortoiseHg; Flags: 
uninsdeletevalue; Components: shell
+Root: HKLM32; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Shell 
Extensions\Approved; Check: Is64BitInstallMode; ValueType: string; ValueName: 
{{B456DBA1-7BF4-478c-937A-05130C2C212E}; ValueData: TortoiseHg; Flags: 
uninsdeletevalue; Components: shell
+Root: HKLM32; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Shell 
Extensions\Approved; Check: Is64BitInstallMode; ValueType: string; ValueName: 
{{B456DBA2-7BF4-478c-937A-05130C2C212E}; ValueData: TortoiseHg; Flags: 
uninsdeletevalue; Components: shell
+Root: HKLM32; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Shell 
Extensions\Approved; Check: Is64BitInstallMode; ValueType: string; ValueName: 
{{B456DBA6-7BF4-478c-937A-05130C2C212E}; ValueData: TortoiseHg; Flags: 
uninsdeletevalue; Components: shell
 
 ; Context menu handlers
 Root: HKCR; Subkey: Directory\shellex\ContextMenuHandlers\TortoiseHgCMenu; 
Flags: uninsdeletekey; Components: shell
 Root: HKCR; Subkey: Directory\shellex\ContextMenuHandlers\TortoiseHgCMenu; 
ValueType: string; ValueName: ; ValueData: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Components: shell
+Root: HKCR32; Subkey: Directory\shellex\ContextMenuHandlers\TortoiseHgCMenu; 
Check: Is64BitInstallMode; Flags: uninsdeletekey; Components: shell
+Root: HKCR32; Subkey: Directory\shellex\ContextMenuHandlers\TortoiseHgCMenu; 
Check: Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Components: shell
 
 Root: HKCR; Subkey: 
Directory\Background\shellex\ContextMenuHandlers\TortoiseHgCMenu; Flags: 
uninsdeletekey; Components: shell
 Root: HKCR; Subkey: 
Directory\Background\shellex\ContextMenuHandlers\TortoiseHgCMenu; ValueType: 
string; ValueName: ; ValueData: {{B456DBA0-7BF4-478c-937A-05130C2C212E}; 
Components: shell
+Root: HKCR32; Subkey: 
Directory\Background\shellex\ContextMenuHandlers\TortoiseHgCMenu; Check: 
Is64BitInstallMode; Flags: uninsdeletekey; Components: shell
+Root: HKCR32; Subkey: 
Directory\Background\shellex\ContextMenuHandlers\TortoiseHgCMenu; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Components: shell
 
 Root: HKCR; Subkey: Drive\shellex\ContextMenuHandlers\TortoiseHgCMenu; Flags: 
uninsdeletekey; Components: shell
 Root: HKCR; Subkey: Drive\shellex\ContextMenuHandlers\TortoiseHgCMenu; 
ValueType: string; ValueName: ; ValueData: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Components: shell
+Root: HKCR32; Subkey: Drive\shellex\ContextMenuHandlers\TortoiseHgCMenu; 
Check: Is64BitInstallMode; Flags: uninsdeletekey; Components: shell
+Root: HKCR32; Subkey: Drive\shellex\ContextMenuHandlers\TortoiseHgCMenu; 
Check: Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Components: shell
 
 Root: HKCR; Subkey: Folder\shellex\ContextMenuHandlers\TortoiseHgCMenu; Flags: 
uninsdeletekey; Components: shell
 Root: HKCR; Subkey: Folder\shellex\ContextMenuHandlers\TortoiseHgCMenu; 
ValueType: string; ValueName: ; ValueData: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Components: shell
+Root: HKCR32; Subkey: Folder\shellex\ContextMenuHandlers\TortoiseHgCMenu; 
Check: Is64BitInstallMode; Flags: uninsdeletekey; Components: shell
+Root: HKCR32; Subkey: Folder\shellex\ContextMenuHandlers\TortoiseHgCMenu; 
Check: Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Components: shell
 
 Root: HKCR; Subkey: *\shellex\ContextMenuHandlers\TortoiseHgCMenu; Flags: 
uninsdeletekey; Components: shell
 Root: HKCR; Subkey: *\shellex\ContextMenuHandlers\TortoiseHgCMenu; ValueType: 
string; ValueName: ; ValueData: {{B456DBA0-7BF4-478c-937A-05130C2C212E}; 
Components: shell
+Root: HKCR32; Subkey: *\shellex\ContextMenuHandlers\TortoiseHgCMenu; Check: 
Is64BitInstallMode; Flags: uninsdeletekey; Components: shell
+Root: HKCR32; Subkey: *\shellex\ContextMenuHandlers\TortoiseHgCMenu; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Components: shell
 
 Root: HKCR; Subkey: 
InternetShortcut\shellex\ContextMenuHandlers\TortoiseHgCMenu; Flags: 
uninsdeletekey; Components: shell
 Root: HKCR; Subkey: 
InternetShortcut\shellex\ContextMenuHandlers\TortoiseHgCMenu; ValueType: 
string; ValueName: ; ValueData: {{B456DBA0-7BF4-478c-937A-05130C2C212E}; 
Components: shell
+Root: HKCR32; Subkey: 
InternetShortcut\shellex\ContextMenuHandlers\TortoiseHgCMenu; Check: 
Is64BitInstallMode; Flags: uninsdeletekey; Components: shell
+Root: HKCR32; Subkey: 
InternetShortcut\shellex\ContextMenuHandlers\TortoiseHgCMenu; Check: 
Is64BitInstallMode; ValueType: string; ValueName: ; ValueData: 
{{B456DBA0-7BF4-478c-937A-05130C2C212E}; Components: shell
 

------------------------------------------------------------------------------
Come build with us! The BlackBerry&reg; Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9&#45;12, 2009. Register now&#33;
http://p.sf.net/sfu/devconf
_______________________________________________
Tortoisehg-develop mailing list
Tortoisehg-develop@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tortoisehg-develop

Reply via email to