[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: TortoiseOverlay merge module questions

From: Adrian Buehlmann <adrian_at_cadifra.com>
Date: Sun, 28 Feb 2010 21:22:25 +0100

On 26.02.2010 19:47, Stefan Küng wrote:
> On 26.02.2010 10:54, Adrian Buehlmann wrote:
>
>>>
>>> Also, what you call a "functional msi" might work on your system with
>>> your specific version of the windows installer. Someone using another
>>> version of the windows installer might get another result or the
>>> installation won't work at all.
>>
>> We will ship exactly that in TortoiseHg 1.0, in a couple of days
>> (an msi having both 32 and 64 bit components).
>>
>> But of course without the TortoiseOverlays x86 in our x64 installer, due to
>> the component GUID conflict. We will request our users to download and install
>> TortoiseOveralys x86 themselves for x64 platforms if they want to have
>> overlay icons in 32 bit processes (tested, works fine, but of course is
>> clumsy), citing the GUID conflict.
>>
>> I admit I haven't tested yet on Win XP x64 but on clean Vista x64 SP2 and
>> Windows 7 x64 all this works fine.
>
> I wouldn't be so sure about that. Do an install but with a full log. You
> might be surprised about what doesn't work.
> Please read this post about the problems:
> http://blogs.msdn.com/heaths/archive/2008/01/15/different-packages-are-required-for-different-processor-architectures.aspx

Works fine here, after we switched to using the new, bugfixed
TortoiseOverlays 1.0.13 merge modules (thanks a ton for the fix!).

(For other readers: the bug fixed by Stefan was that the
TortoiseOverlays x86 and x64 pre 1.0.13 msn's both used the same GUID
for a certain component id, causing a GUID component id conflict when
trying to merge both modules into our x64 installer).

I have done testinstalls using our new x64 installer (which now merges
both the x86 and x64 TortoiseOverlays merge modules) on Windowx XP pro
SP2, Vista Ultimate SP2 and Windows 7 Ultimate (all x64, all clean).

I have enabled verbose+debug logging (/l*xv) when running msiexec and
uploaded the logfiles to:
http://bitbucket.org/abuehl/thg-abuehl/downloads/

The logfiles are:
log-initial-install-Win7-Ultimate-x64.txt
log-initial-install-Vista-Ultimate-x64-SP2.txt
log-initial-install-XP-pro-x64-SP2.txt

As far as I can tell by my very limited understanding of these kind of
logfiles, everything looks fine in there.

I also couldn't find any defect in the behavior of the installed
products: context menu and overlay icons are working fine in both 32 and
64 bit processes. Our TortoiseHg dialogs are working fine as well.

Per the x86/x64 issues mentioned in that blog post referenced: I can't
follow the reasoning of the blogger. Per my understanding it should be
possible to have 32 and 64 bit components in a 64 bit installer.

See for example the column "Attributes" in the "Component" table:
http://msdn.microsoft.com/en-us/library/aa368007(VS.85).aspx

For "Attributes", there is a constant msidbComponentAttributes64bit
(value 256). The documentation for that value reads (quote):

"Set this bit to mark this as a 64-bit component. This attribute
facilitates the installation of packages that include both 32-bit and
64-bit components. If this bit is not set, the component is registered
as a 32-bit component."

So it can't be that illegal to have both 32 and 64 bit components in an
installer, if Microsofts specifically mentions that case.

We've used that.

Our current beta 1.0 installers can be found at:
http://bitbucket.org/tortoisehg/thg-winbuild/downloads/

At the time of writing this we have there:
tortoisehg-stable-0.9.31201-x64-e6a25817-c84d-4c20-a80b-0fe792df86d4.msi

The 1.0 final is due on March 3rd.

>> Per my own cluelessness, it is hard to understand that two packages can't be
>> installed in a single installer, but they work fine once installed, if a user
>> installs these separate packages manually, one after the other.
>>
>> Our minimum required platform will be Win XP and our focus for x64 platforms
>> is clearly Vista and Windows 7. I might as well consider having the x64 installer
>> refusing to install TortoiseHg 1.0 on Win XP x64 if it turns out to be problem on
>> that platform.
>
> The problem(s) are due to the redirections in place, independent of OS
> versions.
>
>> For those interested: 1.0 betas for testing are available on
>> http://bitbucket.org/tortoisehg/thg-winbuild/downloads/
>> (take a tortoisehg-stable-*.msi)
>
>> I still don't see why the exact same component GUID must be used twice
>> in two different products (one being an x86 and the other a x64).
>>
>> Can you explain why it is not possible to have *different* GUIDs?
>>
>> Stupid question (as often): Why not doing something like:
>
> Actually, I fixed it a better way (check the diff and you'll know what I
> mean :) ).
>
> The new version (1.0.13) is online.
>
> Stefan
>

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=2453148

To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2010-02-28 21:27:08 CET

This is an archived mail posted to the TortoiseSVN Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.