Am 01.06.2012 09:08, schrieb heiko.hel...@horiba.com:

 >
 > What I want to do is to check if the 32-bit version of Java has been
 > installed on 64-bit Windows 7.
 > Is there a better way to do this? uninstall only checks for 64 bit apps
 > (on 64-bit os), or will it check for both?


I use the packages below.
The first package just determines which JRE to install based on the O/S, since Win2k is not supported by JRE 1.7 So I only have to add the "Java" package to a general profile that is included by any host.


<!--code start (watch for line wraps)-->

<?xml version="1.0" encoding="UTF-8"?>

<packages:packages xmlns:packages="http://www.wpkg.org/packages"; xmlns:wpkg="http://www.wpkg.org/wpkg"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:noNamespaceSchemaLocation="../xsd/packages.xsd" >

<package id="Java" name="Java" revision="2011.10.22" reboot="false" priority="10" execute="once">
        <include package-id="JRE6" os="5\.0\.\d{4}"/>
        <include package-id="JRE7">
            <condition>
                <check type="logical" condition="not">
                    <check type="host" condition="os" value="5\.0\.\d{4}"/>
                </check>
            </condition>
        </include>
    </package>

<package id="JRE6" name="Java Runtime Environment 6" revision="%JRE_VER%" reboot="false" priority="10">
        <variable name="JRE_VER"            value="31" />
<variable name="PKG_SOURCE_X86" value="%SOFTWARE%\Java\jre-6u%JRE_VER%-windows-i586.exe"/> <variable name="PKG_SOURCE_X64" value="%SOFTWARE%\Java\jre-6u%JRE_VER%-windows-x64.exe"/> <variable name="PKG_DEST_NATIVE" value="%ProgramFiles%\Java\jre6\bin" /> <variable name="PKG_DEST_WOW64" value="%ProgramFiles(x86)%\Java\jre6\bin" /> <variable name="PKG_INSTALL_SWITCH" value="ADDLOCAL=ALL IEXPLORER=1 MOZILLA=1 REBOOT=Suppress"/>

<check type="uninstall" condition="versiongreaterorequal" path="Java.TM. 6 Update [0-9]+" value="6.0.%JRE_VER%0" />

        <install include="remove" />
        <!-- install latest version -->
<install cmd='"%PKG_SOURCE_X86%" /s /v"/passive /norestart /log %TMP%\JRE6_x86.log %PKG_INSTALL_SWITCH%"' /> <install cmd='"%PKG_SOURCE_X64%" /s /v"/passive /norestart /log %TMP%\JRE6_AMD64.log %PKG_INSTALL_SWITCH%"' architecture="x64" />

        <upgrade include="install" />

        <!-- stop quick start service -->
        <remove cmd="%ComSpec% /c net stop JavaQuickStarterService">
            <exit code="2" />
        </remove>
        <!-- remove 32-bit version -->
<remove cmd="%ComSpec% /c for /L %V in (0,1,9) do @msiexec /passive /x {3248F0A8-6813-11D6-A77B-00B0D01600%V0}">
            <exit code="1605" />
        </remove>
<remove cmd="%ComSpec% /c for /L %V in (10,1,%JRE_VER%) do @msiexec /passive /x {26A24AE4-039D-4CA4-87B4-2F832160%VFF}">
            <exit code="1605" />
        </remove>
        <!-- remove 64-bit version -->
<remove cmd="%ComSpec% /c for /L %V in (10,1,%JRE_VER%) do @msiexec /passive /x {26A24AE4-039D-4CA4-87B4-2F864160%VFF}" architecture="x64">
            <exit code="1605" />
        </remove>
    </package>

<package id="JRE7" name="Java Runtime Environment 7" revision="%JRE_VER%" reboot="false" priority="10">
        <variable name="JRE_VER"            value="3" />
<variable name="PKG_SOURCE_X86" value="%SOFTWARE%\Java\jre-7u%JRE_VER%-windows-i586.exe"/> <variable name="PKG_SOURCE_X64" value="%SOFTWARE%\Java\jre-7u%JRE_VER%-windows-x64.exe"/> <variable name="PKG_DEST_NATIVE" value="%ProgramFiles%\Java\jre7\bin" /> <variable name="PKG_DEST_WOW64" value="%ProgramFiles(x86)%\Java\jre7\bin" /> <variable name="PKG_INSTALL_SWITCH" value="ADDLOCAL=ALL IEXPLORER=1 MOZILLA=1 REBOOT=Suppress"/>

<check type="uninstall" condition="versiongreaterorequal" path="Java.TM. 7 Update [0-9]+" value="7.0.%JRE_VER%0" />

        <install include="remove" />
        <!-- install latest version -->
<install cmd='"%PKG_SOURCE_X86%" /s /v"/passive /norestart /log %TMP%\JRE7_x86.log %PKG_INSTALL_SWITCH%"' /> <install cmd='"%PKG_SOURCE_X64%" /s /v"/passive /norestart /log %TMP%\JRE7_AMD64.log %PKG_INSTALL_SWITCH%"' architecture="x64" />

        <upgrade include="install" />

        <!-- stop quick start service -->
        <remove cmd="%ComSpec% /c net stop JavaQuickStarterService">
            <exit code="2" />
        </remove>
        <!-- remove 32-bit version -->
<remove cmd="%ComSpec% /c for /L %V in (0,1,%JRE_VER%) do @msiexec /passive /x {26A24AE4-039D-4CA4-87B4-2F8321700%VFF}">
            <exit code="1605" />
        </remove>
        <!-- remove 64-bit version -->
<remove cmd="%ComSpec% /c for /L %V in (0,1,%JRE_VER%) do @msiexec /passive /x {26A24AE4-039D-4CA4-87B4-2F8641700%VFF}" architecture="x64">
            <exit code="1605" />
        </remove>
    </package>
</packages:packages>

<!--code end-->

--
Stefan P.

Top-posting:
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?
-------------------------------------------------------------------------
wpkg-users mailing list archives >> http://lists.wpkg.org/pipermail/wpkg-users/
_______________________________________________
wpkg-users mailing list
wpkg-users@lists.wpkg.org
http://lists.wpkg.org/mailman/listinfo/wpkg-users

Reply via email to