Either a transform specifically for Win2k installs, or perhaps a Qualified
Component. I've never had reason to use either, but it sounds like this
situation would fit. Links for Qualified Components:

 

http://msdn2.microsoft.com/en-us/library/aa370947(VS.85).aspx

http://msdn2.microsoft.com/en-us/library/aa372437(VS.85).aspx

 

Not too sure how to make a qualified component using WiX though - had a look
in the schema and nothing leapt out at me.

 

AS

 

  _____  

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Lewis G.
Pringle, Jr.
Sent: Sunday, 23 December 2007 12:38 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] WIX and private assemblies for Windows 2000

 

Folks:

            I have an activeX control I deploy with my Win32 application
which requires registry settings. I've created a manifest for this OCX, so
that it can be installed on WinXP and later without any registry settings
(so works more nearly side-by-side with other programs that might use this
OCX).

 

            The issue is with Win2k. Apparantly, the whole private assembly
trick doesn't work on Win2k, which means that I must have my installer do
the registry munging (add typelibs etc) on Win2k, but not later OSes.

 

            The obvious way to do this was to create TWO components - one
the XP-And-Later one, and one for Win2k. I did this using:

 

       <Component Id="GigaSoft.ProEssentials.Charting"
Guid="6DB19352-7F3B-45C5-99ED-3853BB5BCE45">

          <?if $(var.SupportWin2k) = 1?>

            <!--

              For WinXP (501) or later, just copy private assmblies - no
registry stuff needed

            -->

            <Condition >VersionNT >= 501</Condition>

          <?endif?>

            ..

 

      <?if $(var.SupportWin2k) = 1?>

        <Component Id="GigaSoft.ProEssentials.Charting.Win2k"
Guid="7E14F26A-1D01-4b42-B3AC-45BC9F7E2B8D">

           <Condition >VersionNT = 500</Condition>

      .

 

The trouble  is that I get warnings from WIX:

warning LGHT1076 : ICE30: The target file
'hqo8tfwc.man|GigaSoft.ProEssentials.Charting.manifest' might be installed
in '[ProgramFilesFolder]\Records For Living, Inc\HealthFrame
v3\GigaSoft.ProEssentials.Charting\' by two different conditionalized
components on an LFN system: 'GigaSoft.ProEssentials.Charting' and
'GigaSoft.ProEssentials.Charting.Win2k'. If the conditions are not mutually
exclusive, this will break the component reference counting system.

 

 

            And so on - for each file in the two components.

 

            This warning suggested to me that there might be some neater,
cleaner WIX way to solve this problem?

 

 

 

                                    Lewis.

 

 

 

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to