none
Bootstrapper - BypassIf

    Question

  • I have found a few examples on ways to do conditional installs based on platform (eg x86 vs x64). One example I found is the following:

    <BypassIf Property="VersionNT64" Compare="ValueNotExists" Value="N/A for ValueExists and ValueNotExists" />

    What I am not sure about is what [Value="N/A for ValueExists and ValueNotExists"] actually does?

    Would the following give me a different result?

    <BypassIf Property="VersionNT64" Compare="ValueNotExists" />

    or the inverse

    <BypassIf Property="VersionNT64" Compare="ValueExists" />

     

    Reading it, it would seem that the VersionNT64 would end up being "N/A" in all cases? So I am thinking I might have found a bad example.

     

    What I really want is a reliable way to determine if I am or am not on a x64 platform.

     


    Kurt
    Monday, February 28, 2011 11:01 PM

Answers

  • Hi kurtis01,

     

    I think you can use the following code line to judge the platform:

     

    <FailIf Property="ProcessorArchitecture" Compare="ValueEqualTo" Value="IA64"/>
    
    <BypassIf Property="ProcessorArchitecture" Compare="ValueEqualTo" Value="amd64" />
    
    For x86:
    <BypassIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="Intel" />
    

     

    And this article will be a suitable one for you:

    http://youarenotexpectedtounderstandthis.blogspot.com/2009/08/vsnet-2008-prerequisite-for-sql-server.html

     

    And I think this is a Windows Installer XML(WIX) question, is it? Since I'm not familiar with this technical. 

     

    And if so, I think the following website is suitable for you to research WIX question:

    http://wix.sourceforge.net/mailinglists.html

    There're more WIX expert will show you the expert help, when you need the WIX help.

     

    If there's any concern, please feel free to let me know.

    Best wishes,


    Mike [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Wednesday, March 02, 2011 11:47 AM
    Moderator

All replies

  • Hi kurtis01,

     

    I think you can use the following code line to judge the platform:

     

    <FailIf Property="ProcessorArchitecture" Compare="ValueEqualTo" Value="IA64"/>
    
    <BypassIf Property="ProcessorArchitecture" Compare="ValueEqualTo" Value="amd64" />
    
    For x86:
    <BypassIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="Intel" />
    

     

    And this article will be a suitable one for you:

    http://youarenotexpectedtounderstandthis.blogspot.com/2009/08/vsnet-2008-prerequisite-for-sql-server.html

     

    And I think this is a Windows Installer XML(WIX) question, is it? Since I'm not familiar with this technical. 

     

    And if so, I think the following website is suitable for you to research WIX question:

    http://wix.sourceforge.net/mailinglists.html

    There're more WIX expert will show you the expert help, when you need the WIX help.

     

    If there's any concern, please feel free to let me know.

    Best wishes,


    Mike [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Wednesday, March 02, 2011 11:47 AM
    Moderator
  • Hi kurtis01,

    I am writing to check the status of the issue on your side.

     

    What about this problem now?

     

    Would you mind letting us know the result of the suggestions?

     

    Best wishes,


    Mike [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Monday, March 07, 2011 4:36 PM
    Moderator
  • Sorry, just noticed the reply.

    Let me ask a more specific quesiton, will all x86 systems be ProcessorArchitecture == Intel?

    I will give a varioation of this a try and let you know next week.


    Kurt
    Friday, April 01, 2011 4:59 PM
  • I believe this is following the same convention as the Windows Installer property VersionNT64. On an 32-bit operating system this property does not exist, so the ByPassif is saying "bypass if the VersionNT64 property does not exist", meaning that it is a 32-bit OS.
    Phil Wilson
    Friday, April 01, 2011 10:42 PM
    Moderator
  • Hi Kurtis01,

    I will go on to follow up this thread once you show us any update.

    And you also can let us know the results after you try these suggestions from PhilWilson and my reply.

     

    Have a nice day!


    Mike [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Monday, April 04, 2011 3:32 AM
    Moderator