none
Application installations with scripts

    Pergunta

  • You will have to forgive my lack of scripting knowledge. I am definitely a beginner. I created an OS detection script. The script launches the x86 or x64 msi depending on the OS of the client machine. The installation works fine except for the fact that the TS continues after the script launches the msi. I know MDT is behaving normally. MDT runs and completes the script and it thinks that the application is finished installing. What is the best way to perform this type of scripted install?

    Quiet install command: WSCRIPT 7zip_install.vbs

    Working directory: \\xxx.xxx.xxx.xxx\apps\7zip  

    

    quinta-feira, 5 de julho de 2012 22:19

Respostas

  • I use application bundles to handle applications that have 32bit and 64bit installers.  Process described here : http://www.vaughnemiller.com/2011/12/21/application-bundles-in-mdt-2010/

    Basically setup up the x86 app in MDT and restrict it to x86 platform.  Do likewise with the x64 app and similarly restrict it to x64.  Then create a bundle including both apps.  Use this bundle when deploying, and it will work regardless of platform.

    Vaughn

    • Marcado como Resposta Kevin Orrison sexta-feira, 6 de julho de 2012 14:57
    sexta-feira, 6 de julho de 2012 12:00

Todas as Respostas

  • I wouldn't use a script for this, I would use a wmi query. Take a look at this and see if it helps:

    http://scriptimus.wordpress.com/2011/06/22/mdt-2010-using-wmi-queries-with-task-sequence-step-conditions/


    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. ”

    sexta-feira, 6 de julho de 2012 03:44
  • The best thing to do would be to use MDT for that without script, but if you want/need to use the script you can try to time it and use WScript.Sleep

    http://www.devguru.com/technologies/wsh/quickref/wscript_Sleep.html

    WScript.Sleep(1000)

    http://ss64.com/vb/run.html

    If bWaitOnReturn is set to TRUE, the Run method returns   any error code returned by the application.

    Syntax
          objShell.Run (strCommand, [intWindowStyle], [bWaitOnReturn])

    sexta-feira, 6 de julho de 2012 04:59
  • You can use Johan Arwidmark's vbScript template to install applications in MDT.

    http://www.deployvista.com/Blog/JohanArwidmark/tabid/78/EntryID/160/language/sv-SE/Default.aspx

    sexta-feira, 6 de julho de 2012 07:13
  • for some applications i am using a powershell script to do just that without any problems

    it does a wmi query to check what OS architecture is installed and based on that installs the right software.

    if you want i can post the bit of code somewhere

    sexta-feira, 6 de julho de 2012 07:45
  • I use application bundles to handle applications that have 32bit and 64bit installers.  Process described here : http://www.vaughnemiller.com/2011/12/21/application-bundles-in-mdt-2010/

    Basically setup up the x86 app in MDT and restrict it to x86 platform.  Do likewise with the x64 app and similarly restrict it to x64.  Then create a bundle including both apps.  Use this bundle when deploying, and it will work regardless of platform.

    Vaughn

    • Marcado como Resposta Kevin Orrison sexta-feira, 6 de julho de 2012 14:57
    sexta-feira, 6 de julho de 2012 12:00
  • Yes, if you could provide an example, I would appreciate it. I'm looking into all these solutions.
    sexta-feira, 6 de julho de 2012 13:55
  • $application =("\\server\sources\app1\application")
    
    if (gwmi Win32_OperatingSystem | Select-Object OSArchitecture | findstr /i 32-bit)
        {
        set-Location $application
        write-Host "32-bit OS found installing 32-bit application"
        msiexec /i application_32bit.msi  /qb | out-Host
        }
    elseif (gwmi Win32_OperatingSystem | Select-Object OSArchitecture | findstr /i 64-bit)
        {
        set-Location $application
        write-Host "64-bit OS found installing 64-bit application"
        msiexec /i application_64bit.msi  /qb | out-Host
       }
    
    i'm not great with powershell but it works for me.
    sexta-feira, 6 de julho de 2012 14:20
  • An application bundle was definitely the easiest way to do this! Thanks for all the input!
    sexta-feira, 6 de julho de 2012 15:00