Objective: Create a custom definition which will install the latest version of Flash.
Issue: I have followed the attached document "How to Create Custom Definitions in 90.pdf" and downloaded the latest version of flash, install_flash_player_11_active_x_32bit.msi. However, I am not having any luck with step 8, "Execute a Program" and installing the MSI file. Can anyone assist?
I know everything is working fine up to the point of "Execute a Program". One step prior I have "Copy a File" set to copy the "install_flash_player_11_active_x_32bit.msi" file to the sdmcache folder and this occurs.
Under arguments you are just using the variable %sdmcache% which is just the folder path to the cache folder. you need to append %PATCHFILENAME%. So:
%PATCHFILENAME is whatever you have listed in patch information to download.
Sorry just saw you are copying a file. You will need to specify the location of where you are copying the file. So if you are copying it into SDMCACHE then it would be
I try not to use copy file alot, and instead like to place it in the designated patch folder and configure "Patch Information"
OK... So I edited the args to read "/i "c:\program files\landesk\ldclient\sdmcache\Flash-11_1_102_62.msi" /quiet" and it worked.
You mentioned you do not copy the file. Thinking back to what I tried yesterday, I feel I need this in order to move the MSI file from our server (LANDesk patch folder) to the local machine for install. Are your run directly off the server?
Zman is right. You probably don't need the copy file. In the section just above that "Patch Information", in the top dropdown, you probably selectd "Repairing this issue requires downloading a patch". Then you probably put the patch information in.
With that information, LANDesk will automatically download the patch file (in this case an MSI) to the sdmcache, and you can run it from there.
For the command lines, I always recommend using static values and paths as litte as possible. That ensures the maximum compatability. Right now it looks like you have:
/i "c:\program files\landesk\ldclient\sdmcache\Flash-11_1_102_62.msi" /quiet
Even better would be as Zman said:
Vulscan can correctly resolve those values, so on a 32-bit machine it will be C:\Program Files\..\sdmcache, and on 64-bit machines it will be C:\Program Files (x86)\..\sdmcache. It will even work if you have moved the sdmcache somewhere else.
I would also recommend using the %windir% environment variable in the path just in case some of the computers don't have msiexec in the search path (rare, I know but, just in case)
Personal preference...I prefer to place the patch/custom exe using "Patch Information - repairing this ...requires downloading a patch" and allow LANDesk to deploy it to the workstation - just a habit.
As you all mentioned, the "Copy a File" was redundent and not needed. I have since removed that entry and the MSI copies to the c:\program files\landesk\ldclient\sdmcache folder just fine, everytime.
I altered the ARGS line to read /i %SDMCACHE%%PATCHFILENAME /quiet and /i %SDMCACHE%\Flash-11_1_102_62.msi /quiet but when doing so the installation does not occur. It seems the installation will only occur if I have the ARGS line read /i "c:\program files\landesk\ldclient\sdmcache\Flash-11_1_102_62.msi" /quiet. Now... I understand the reason for the %SDMCACHE%%PATCHFILENAME% and would like to use it. But why does it not? I have gone a workstation and in in a run command typed %sdmcache% and receive a Microsoft message box stating that the folder cannot be found.
Thanks for any input.
In Patch Information is the unique file name Flash-11_1_102_62.msi. Should work we use it all the time. %SDMCACHE% and other are not OS environment variables so they will no resolve in a cmd prompt. Maybe send a screen shot of the Patch Information screen and Patch Install Commands.
Hmmm....... Try this:
Path: %windir%\system32\msiexec.exe Args: /i"$(FULLPATHTOBINARY)$(PATCHBINARY)" /quiet /norestart
I've used this for .msu files.