2017-05-22 3 views
-1

J'ai mon propre msi par lequel j'essaye d'installer le JRE exe. Je suis capable d'exécuter d'autres EXE de cette façon. Mais le JRE EXE n'est pas installé. Voici l'erreur que je reçois.Comment est-ce que j'installe JRE EXE silencieusement par mon propre MSI?

MSI (s) (A0:C4) [05:10:08:690]: Executing op: CustomActionSchedule(Action=RUN_JAVA,ActionType=1042,Source=C:\Program Files (x86)\preRequisites\Java.exe,Target=/s,) 
MSI (s) (A0:B8) [05:10:32:587]: Running as a service. 
CustomAction RUN_JAVA returned actual error code 1618 (note this may not be 100% accurate if translation happened inside sandbox) 
MSI (c) (FC:BC) [05:10:35:397]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg 

Error 1722. There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. Action RUN_JAVA, location: C:\Program Files (x86)\preRequisites\Java.exe, command: /s 
Action ended 5:10:38: InstallFinalize. Return value 3. 
Action ended 5:10:39: INSTALL. Return value 3. 

est Ci-dessous le fichier WiX j'ai pour mon MSI.

<Directory Id="TARGETDIR" Name="SourceDir"> 
     <Directory Id="ProgramFilesFolder"> 
     <Directory Id="INSTALLLOCATION" Name="preRequisites"> 
      <Component Id="ProductComponent" Guid="7927FC46-E8C5-4FEA-A683-C275C08FB4D5" KeyPath="yes"> 
      <File Id="VC2013.exe" Name="VC2013.exe" Source="../../Setups/PreRequisites/kkube-prerequisites/vcredist_x86_2013.exe" DiskId="1"/> 
      <File Id="VC2015.exe" Name="VC2015.exe" Source="../../Setups/PreRequisites/kkube-prerequisites/vcredist_x86_2015.exe" DiskId="1"/> 
      <File Id="Java.exe" Name="Java.exe" Source="../../Setups/PreRequisites/kkube-prerequisites/jre-8u92-windows-x64.exe" DiskId="1"/> 
      <File Id="dotNet4.5Installer.exe" Name="dotNet4.5Installer.exe" Source="../../Setups/PreRequisites/kkube-prerequisites/dotNet4.5Installer.exe" DiskId="1"/> 
      </Component> 
     </Directory> 
     </Directory> 
    </Directory> 

    <CustomAction Id="RUN_VC2013" FileKey="VC2013.exe" ExeCommand="/q" Execute="deferred" Return="check" /> 
    <CustomAction Id="RUN_VC2015" FileKey="VC2015.exe" ExeCommand="/q" Execute="deferred" Return="check" /> 
    <CustomAction Id="RUN_JAVA" FileKey="Java.exe" ExeCommand="/s" Execute="deferred" Return="check" /> 
    <CustomAction Id="RUN_DOTNET" FileKey="dotNet4.5Installer.exe" ExeCommand="/q" Execute="deferred" Return="check" /> 

    <InstallExecuteSequence> 
     <Custom Action="RUN_VC2013" Before="InstallFinalize">NOT Installed</Custom> 
     <Custom Action="RUN_VC2015" Before="InstallFinalize">NOT Installed</Custom> 
     <Custom Action="RUN_JAVA" Before="InstallFinalize">NOT Installed</Custom> 
     <Custom Action="RUN_DOTNET" Before="InstallFinalize">NOT Installed</Custom> 
    </InstallExecuteSequence> 

    <Feature Id="ProductFeature" Title="preRequisites" Level="1"> 
     <ComponentRef Id="ProductComponent" /> 
    </Feature> 

J'ai essayé d'exécuter le jre avec la commande "/ s". Il s'installe en silence. Pourquoi échoue-t-il lors de l'installation via mon MSI? Comment puis-je atteindre cet objectif? Toute aide serait très appréciée.

EDIT: J'ai essayé de commander la séquence d'installation comme indiqué ci-dessous.

<InstallExecuteSequence> 
    <Custom Action="RUN_DOTNET" Before="InstallFinalize">NOT Installed</Custom> 
    <Custom Action="RUN_VC2013" After="RUN_DOTNET">NOT Installed</Custom> 
    <Custom Action="RUN_VC2015" After="RUN_VC2013">NOT Installed</Custom> 
    <Custom Action="RUN_JAVA" After="RUN_VC2015">NOT Installed</Custom>  
</InstallExecuteSequence> 

Ensuite, je reçois l'erreur ci-dessous.

MSI (s) (40:7C) [05:25:40:920]: Executing op: ActionStart(Name=RUN_DOTNET,,) 
MSI (s) (40:7C) [05:25:40:920]: Executing op: CustomActionSchedule(Action=RUN_DOTNET,ActionType=1042,Source=C:\Program Files (x86)\preRequisites\dotNet4.5Installer.exe,Target=/q,) 
MSI (s) (40:7C) [05:28:05:286]: Executing op: ActionStart(Name=RUN_VC2013,,) 
MSI (s) (40:7C) [05:28:05:286]: Executing op: CustomActionSchedule(Action=RUN_VC2013,ActionType=1042,Source=C:\Program Files (x86)\preRequisites\VC2013.exe,Target=/q,) 
MSI (s) (40:F8) [05:28:15:574]: Running as a service. 
MSI (s) (40:F8) [05:28:21:953]: Running as a service. 
MSI (s) (40:F8) [05:28:27:994]: Running as a service. 
MSI (s) (40:F8) [05:28:34:119]: Running as a service. 
CustomAction RUN_VC2013 returned actual error code 1618 (note this may not be 100% accurate if translation happened inside sandbox) 
MSI (s) (40:7C) [05:28:34:431]: Note: 1: 1722 2: RUN_VC2013 3: C:\Program Files (x86)\preRequisites\VC2013.exe 4: /q 
MSI (s) (40:7C) [05:28:34:431]: Note: 1: 2205 2: 3: Error 
MSI (s) (40:7C) [05:28:34:431]: Note: 1: 2228 2: 3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 1722 
MSI (c) (84:D8) [05:28:34:541]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg 

Error 1722. There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. Action RUN_VC2013, location: C:\Program Files (x86)\preRequisites\VC2013.exe, command: /q 
MSI (s) (40:7C) [05:28:48:603]: Note: 1: 2205 2: 3: Error 
MSI (s) (40:7C) [05:28:48:603]: Note: 1: 2228 2: 3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 1709 
MSI (s) (40:7C) [05:28:48:603]: Product: KubePreRequisites -- Error 1722. There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. Action RUN_VC2013, location: C:\Program Files (x86)\preRequisites\VC2013.exe, command: /q 

Action ended 5:28:48: InstallFinalize. Return value 3. 

Répondre

3

Le programme d'installation de Java EXE contient un fichier MSI Java. Windows Installer a un mutex qui empêche un MSI d'installer un autre MSI. Vous devez avoir un autre processus installer un MSI, puis l'autre.