Unanswered Custom component to install via batch file in FBA

  • Friday, October 19, 2012 2:04 PM
     
     

    I have a custom component that is supposed to run a simple batch file during FBA that installs several programs via MSIEXEC.  It works if I run it manually no problem, but we want to automate this process as much as possible.  Windows Installer Service is in the build and I am running FBWF manually at the very end.  Here is what I have for the component at this point (I have tried many different configurations to date):

    FBA Generic Command

    Files

    C:\Windows\MyInstall1.msi

    C:\Windows\MyInstall2.msi

    C:\Windows\MyInstall3.msi

    C:\Windows\MyInstall.bat

    Resources

    Phase 8501

    FilePath %11%\cmd.exe

    Argument %10%\MyInstall.bat

    Build Order 1000

    I have tried several different configurations but just cannot get the batch file to run automatically during FBA.

All Replies

  • Friday, October 19, 2012 3:29 PM
     
     

    Argument "/c %10%\MyInstall.bat"

    I recommend to run it later... at 11500 or something.

    I also noticed bugs with the MSI KB updates. MSIs won't run properly run within FBA. - I had to install another MSI fix before I can run the MSIs the right way. In conclusion: I used KB updates MSI and Install 2 seperate Hotfixes while FBA. After this procedure I can/do run the MSI I want within FBA.


    Windows Embedded Developer and Scripting Guy //Germany (Preparing a blog about Windows Embedded Standard)



    • Edited by KNARZ Friday, October 19, 2012 3:30 PM
    • Edited by KNARZ Friday, October 19, 2012 3:32 PM
    •  
  • Friday, October 19, 2012 4:53 PM
     
     

    Or you could create a FBA Generic command for each installer rather than go through a batch file.

    -Sean


    www.annabooks.com / www.seanliming.com / Book Author - Pro Guide to WES 7, XP Embedded Advanced, Pro Guide to POS for .NET

  • Thursday, October 25, 2012 4:41 PM
     
     

    Argument "/c %10%\MyInstall.bat"

    I recommend to run it later... at 11500 or something.

    I also noticed bugs with the MSI KB updates. MSIs won't run properly run within FBA. - I had to install another MSI fix before I can run the MSIs the right way. In conclusion: I used KB updates MSI and Install 2 seperate Hotfixes while FBA. After this procedure I can/do run the MSI I want within FBA.


    What version of the MSI (Windows Installer component) do I need?  I currently have 5.1.2600.5512 as the version in Target Designer.  After adding the /c to the command line, the FBA gets to Processing Runonce and then reboots and FBA starts over.  The FBALog at the end is saying it could not find ngen.exe.  Is that an indication that the batch file is now running but the MSI portion is failing?  If so, why would it work if I typed the command in manually but not automatically during FBA?
  • Thursday, October 25, 2012 5:02 PM
     
     
    ngen is .net 2.0 - this is some kind of annoying package. I recommend post install.

    Windows Embedded Developer and Scripting Guy //Germany (Preparing a blog about Windows Embedded Standard)

  • Thursday, November 01, 2012 5:08 PM
     
     

    OK so the ngen.exe was a corrupt component and not related to this issue.  It has been fixed.  The batch file is still not running in FBA.  Here is how it is set up:

    FBA Generic Command

    Files

    C:\Windows\MyInstall1.msi

    C:\Windows\MyInstall2.msi

    C:\Windows\MyInstall3.msi

    C:\Windows\MyInstall.bat

    Resources

    Phase 11500

    FilePath %11%\cmd.exe

    Argument "/c %10%\MyInstall.bat"

    Build Order 1000

    Any ideas?  Do I need quotes around the %11\cmd.exe?


  • Friday, November 02, 2012 5:56 PM
     
     

    More information -

    Here is the FBALog for the file in question:

    12:44:22 PM -  [FBALaunch] C:\WINDOWS\System32\cmd.exe "/c C:\Windows\MyInstall.bat" (ExitCode: 0x2331)

    Exit Code 0x2331 apparently is something akin to when you type in a mispelled file name.  I have confirmed that MyInstall.bat is in the C:\Windows folder and that cmd.exe is in C:\Windows\System32.

    What can possibly be going wrong to cause this?