Part 18 of the guide described the process to create and deploy an Config Mgr Application using an MSI file. It was pretty straightforward as Config Mgr was able to interrogate the MSI and discover the following information:
- installation switches for silent install
- Windows Installer file details - to be used in the detection method.
Unfortunately, if the application is to be installed using an executable file (.EXE) you must carry out some manual steps to configure the above information. We will manually configure a deployment type with the installation switches (we need to know these in advance) and we will manually create the detection method based on the presence of a file.
Microsoft Lync 2010 is an example of an application that is installed using an EXE file
As before right click on Application (or create a custom folder and right click that). Select Create Application.
Select "Manually specify the application information"
Enter Application details
Now we must manually configure the deployment type. This will allow us to enter installation parameters and switches. Click Add to add a deployment type.
This open the Create Deployment Type Wizard (note that the Create Application Wizard is still visible in the background)
Choose to manually specify the deployment type
Edit: ConfigMgr 2012 SP1 has introduced "Script Installer (Native)" as a deployment type. Select this from the drop-down menu. Note that "Manually specify the deployment type" remains selected.
Enter the Application name
Enter the location of the program files and configure the installation parameters. We know that "lyncsetup.exe /silent" is correct from previous testing.
This is where we will manually configure a detection method. In the case of Lync 2010, the presence of the file "communicator.exe" is evidence that the application is installed on a device. We will use this as our detection method. Note that it is a good idea to manually install the application on a test device so that we can browse to it in the next step.
Select Add Clause.
Choose File System as the Type (check out the available choices).
Browse to the test computer and select the path to "communicator.exe"
Detection method is now configured.
Ensure that we are installing for system
The Deployment Type Wizard has now been completed. We have configured the deployment type and detection method.
Click Close to return to the Create Application Wizard (which has been waiting in the background).
Note that our deployment type has been added.
Click Next to finish
The Application has now been created and can be distributed and deployed.
Choose to manually specify the deployment type
Edit: ConfigMgr 2012 SP1 has introduced "Script Installer (Native)" as a deployment type. Select this from the drop-down menu. Note that "Manually specify the deployment type" remains selected.
Enter the Application name
Enter the location of the program files and configure the installation parameters. We know that "lyncsetup.exe /silent" is correct from previous testing.
This is where we will manually configure a detection method. In the case of Lync 2010, the presence of the file "communicator.exe" is evidence that the application is installed on a device. We will use this as our detection method. Note that it is a good idea to manually install the application on a test device so that we can browse to it in the next step.
Select Add Clause.
Choose File System as the Type (check out the available choices).
Browse to the test computer and select the path to "communicator.exe"
Detection method is now configured.
Ensure that we are installing for system
The Deployment Type Wizard has now been completed. We have configured the deployment type and detection method.
Click Close to return to the Create Application Wizard (which has been waiting in the background).
Note that our deployment type has been added.
Click Next to finish
The Application has now been created and can be distributed and deployed.
THANK YOU!! followed the guide and voila :)
ReplyDeleteT.
Is this same concept the same for Lync 2013?
ReplyDeleteIt's the same concept for any .exe installation. You just need to know the silent parameter and determine a detection method. But in answer to your specific question, Lync 2013 no longer has it's own separate installer. It's part of Office 2013 (as far as I know).
ReplyDeleteGerry, should we have any permissions or account needs to be added on application folder where all application and program exists? Thanks
DeleteGive the Primary Site Server computer account Full Control over the source files and you will be OK (share & NTFS).
DeleteDear Gerry
ReplyDeletecould you please give us guide about how to remove application from SCCM
Thanks
This is pretty straightforward. In this case you create an application with a Deployment Type that contains an uninstall string. Then deploy it to a collection of computers where you want the app to be removed.
ReplyDeletethis if the application installed on the client computers .. some times we need to remove the application before deploy it on the computers
ReplyDeleteAre you saying that you have deployed an application in error and want to stop it before it installs on computers? In that case, you just delete the deployment (no need to delete the application). If computers have not retrieved their policy at that stage they will not get the application. If they have, you're too late.
ReplyDeleteAnother thing you can do is remove the application from the DP. If computers can't download it they can't install it.
@Gerry Hampson, Followed your steps and on the client computer it said downloading...installing but then said failed. I logged off and logged back on and lync opened right up and all the program files were present and it was functioning. Have you ever saw this behavior before? We tried this deployment of an .exe with VLC through SCCM 2012 and we got the same thing. It said it failed, but it was actually installed.
ReplyDeleteThat can happen for a number of reasons:
Delete1. The detection method is wrong
2. The installer is poorly written and exits too early so that the detection method runs before it's value can actually equal true (i.e. Detecting on a reg key, the installer exits before the reg keys get written, then the detection method can't equal true)
3. The installer exited with an exit code other than 0 that is not specifically designated in your exit codes tab.
The best way to troubleshoot the install failures is to check the "Deployments" workspace on the console. Once the clients report back their status on the deployment it will tell you what the exit code was along with some helpful information on what type of error message came out.
I've never seen that before. Try opening a thread on the Config Mgr 2012 Technet Forum. Perhaps someone will have seen the behaviour.
ReplyDeletehttp://social.technet.microsoft.com/Forums/en-US/category/systemcenter2012configurationmanager
What if i have to run "Lync.msp" after "LyncSetup"? How command would look then?
ReplyDeleteWhat exactly are you trying to do? Does this help you?
ReplyDeleteMy relatives аlways say that I аm wastі&X6E;g
ReplyDeletemy time hеre at wеb, hο&X77;ever I kniw I am getting experience daily
b&X79; rеadіng such pleaѕant articles.
My page: nikon d300 pictures flickr
Dear Gerry ... kindly.. your post address is (Software Distribution) and when you apply your steps .. you used application could you please tell use the different between package and application under application managed and the recommendations used....thanks
ReplyDeleteHave a look at this post from Technet forum
ReplyDeletehttp://social.technet.microsoft.com/Forums/en-US/af559d41-546d-4b59-9906-305ce6f68859/difference-between-an-application-and-a-package?forum=configmanagerapps
Hi Gerry:
ReplyDeleteI am deploying an application through multiple domains. The source installation programs are already copied at the remote locations. In SCCM 2007 I deployed this app using packages, the package just contain a .cmd file with many instructions to install the application. Once tha package was distribuited to the remote distribution points I used to go to the package directory and modify the parameters of the .cmd file, adjusting them to the correct domain.
In SCCM 2012 when I go to the package directory and I edit the .cmd file, the content of the file is encripted. I can not edit the content of the file to adapt it to a particular domain where the application will be installed.
Is this the new behavior in packages in SCCM 2012? How can I modify the content of the .cmd deployed?
This is the new behavior of SCCM 2012 - the Content Library. This was designed to facilitate single-instance storage of content. It is not actually encrypted. However you cannot browse and edit content in the way you could in SCCM 2007.
DeleteHi,
ReplyDeleteI tried to deploy .exe application (firefox) as a test but it got struck in downloading part and even after 10 hrs its downloading 0%. what m i missing.
That normally happens if you have not configured a boundary group. You need to create a boundary group and add your required subnets to it. Then you need to associate a Distribution Point with those boundaries.
DeleteSee here:
http://www.gerryhampsoncm.blogspot.ie/2013/02/sccm-2012-sp1-step-by-step-guide-part-6.html
Hello, the Windows 7 OS and Config manager deploys just fine, I cannot get any additional software to install such as Firefox Adobe Reader, etc. There are no erros ion the STMS logs, the programs are not being downloaded to the target computer, any suggestions? Thanks?
ReplyDeleteCan you deploy the additional software to a computer that is already built?
ReplyDeleteAre you sure that the software is available on a DP?
Have you migrated from ConfigMgr 2007 - is this a boundary issue?
Are your deployment types OK - especially the detection methods?
Hi Gerry. Even though I select the available option, rather than required in the deployment, my exe installs happen automatically. Looking in System Center Software Center on the client the install is already listed in the Installed software tab. Any ideas why please? Thanks
ReplyDeleteAre you sure you haven't got more than one deployment?
DeleteHi Gerry,
ReplyDeleteHave followed the directions (Thanks!) but with every exe I install through SCCM, it downloads and then is stuck on "Installing" until the timeout window. This does not occur with an msi. Any suggestions?
There is something wrong with the installation parameters for your .exes. The first step in this is to figure out how to install your applications (.exes) silently. In your case the application is probably waiting for some user input, which you can't see as it's running in local system context. MSIs are easy. ConfigMgr can interrogate the MSI and figure out the silent parameters. Exes not so easy. You have to figure out and manually configure it.
DeleteTip: I always test by installing the application silently via command line before I attempt to deploy it with ConfigMgr.
Hi Gerry,
ReplyDeleteThank you for sharing your knowledge, I followed the steps and was able to deploy my application. However, I forgot that my applications requires a license key and was wondering if you have information on how to include the license key in the deployment. I appreciate your time and knowledge.
Thank you once again,
-DNA
Sorry for the late response. I've been on vacation. The first step in application deployment via SCCM is to figure out how to install the application silently (ie what installation switches are required?). If the installation requires a license key you need to figure out how to incorporate this into the installation command line. All apps are different. You need to contact the app vendor for this information.
DeleteThank you Gerry, I will contact the vendor. I was able to accomplish a lot since my question. Now it's just a matter of getting the license key reference and I should be ready to roll! Thanks for your assistance. Hope you had a great vacation!
DeleteNo problem.
Deletehi Gerry,
ReplyDeletei followed your steps and im seeing the app (lync) in the software center but its giving me an error that says "The software change returened error code 0x87D01106 (-2016407290)."
in the status of the software center im getting Past due - will be retried.
any suggestions?
Thanks
0x87D01106 = Failed to verify the executable file is valid or to construct the associated command line.
DeleteThere must be something wrong with the syntax of your command line.
I'm seeing this error message as well on a 3rd computer after successfully installing the application on 2 previous computers. Syntax of the command is fine.
DeleteSame error here on 10 workstations, after success on 30.
ReplyDeleteThe example above is for Lync 2010 and it assumes that you do not have Office 2013 installed (Lync is now part of the Office installation). This has introduced another level of complexity.
DeleteHi Gerry,
ReplyDeleteThanks again for a great article. I am successfully deploying applications now. One query I have is for an application that is regularly updated and the update requires an uninstall prior to the update. I have set the version requirement as part of the validation logic so I can install the application but how would I go about setting a process to remove the old version and replace it with the new? Is this under supercendence rules?
Thanks
Chris
Configure a dependency Chris.
DeleteDeployment Type > Dependencies tab
Thanks Gerry, I will give that a try and feed back.
DeleteHi Gerry, great that worked thanks! One last thing (hopefully) - I want to be able to give the user access to reinstall the software, where is this option? Some history, 4 users out of 50 have had the app installed and then the files in the folder disappeared, the other 46 were fine. There is no way I can see to push the app to them again as it shows as installed in add/remove programs. I thought that if they had the option to reinstall or repair the install it would make my life easier...
DeleteHi,
ReplyDeleteI am also getting the same problem as sion, error code 0x87D01106(-2016407290), I am trying to deploy an exe called RUR-PLE and i am using /VERYSILENT command with a detection clause pointing to the .exe but no luck :(
Heres the log from appenforce.log
Ignore ConfigMgr for a moment. That is just the delivery mechanism. The first step here is to ensure that you can install the application silently using a command line. Have you tested this? Use psexec to help you "install as system".
DeleteHey Gerry, not to worry I managed to solve it, its because the application was created before I put SCCM 2012 through a buttload of CU (1, 2, 3, 4 & 5) updates (it was made before I took over the job), I recreated the app from scratch and it went through perfectly.
ReplyDeleteThank you anyways!
Hi Gerry
ReplyDeleteHow to get syntax of command line for different applications and other parameters
ITNINJA.COM is a good place to start
Deletehttp://www.itninja.com/blog/view/the-complete-guide-to-msi-switches-for-silent-software-installation
Hi All,
ReplyDeleteThanks Gerry for the tutorial. I am trying to deploy CyberQuery following your steps, however the client is getting stuck at "installing". Looked at the AppEnforce.log it says "Waiting for process 4520 to finish". If you install the application manually you need to right click on it and run it as admin otherwise it wont run. Is there a workaround for this?
Thanks!
All software deployed by ConfigMgr is installed on the client under the context of the local system account. Therefore permissions are not the problem here. It looks like you are not running the application silently and the installation is waiting for some user intervention (a dialog box that you cannot see). You need to figure out the command line to install the application silently. This is the first step - get some support from the vendor. Test the install from the command line. If you cannot install the application silently then you will not be able to deploy it through ConfigMgr.
DeleteHi,
ReplyDeletesame steps to install UltraVNC.exe ?
As
Same steps. You need to understand how to install the app silently.
DeleteI found this guide helpful. Thank you Gerry. Signed, SCCM Superstar
ReplyDeleteYou're quite welcome. Glad to help.
DeleteHi Gerry,
DeleteAppreciate your help in SCCM administration. I am in learning phase and have VMware setup for SCCM. I have created the package for 7zip.msi installer and is able to distribute as well successfully. However when I try to deploy it, it does not show in Software Center in client Machine i.e. win 7, please help on this.
You haven't given enough information. Did you deploy to the user or device? Did you deploy as Required or Available?
DeleteHi Gerry,
DeleteI am deploying Sage 50 Accounts 2010 via SCCM 2012 on a windows 7 64BIT OS. It fails at the start of the installation giving an Error 1925 "You do not have sufficient privileges to complete this installation. Log on as an administrator and try the installation". SCCM runs under system context so I am not sure why I am getting this error.
I then uses PStools (PSExec)to install the application on the same machine & it installs without issues. Any ideas?
The application is being deployed Device & not user. Available & not required
DeleteThis comment has been removed by the author.
ReplyDeleteHi Gerry,
ReplyDeleteI'm having real issues with MIDAS CIVIL 2016, which is also a SETUP.EXE.
I have an INSTALL.BAT as follows:
setup.exe /s /f1%~dp0MidasCivil2016.iss
this uses an .ISS file, but I've had many errors, the most recent is:
The software change returned error code 0x87D01106(-2016407290).
I'm not familiar with this app. My advice would be to contact the vendor. This link will help you with the proper use of an iss response file.
Deletehttps://support.microsoft.com/en-us/kb/922143
Hi Gerry,
ReplyDeleteThis is a great guide.
I was looking into a failed deployment at my site: An app was deployed to All laptops with 60 successfully installed and 20 in error state and the error shows was 0x87d01106: Failed to verify the executable file is valid or to construct the associated command line.
I understand first to check is syntax of Command line, but this has succesfulyl been deployed to 60 other machines.
Any advice?
Thanks in advance,
Alex
Thanks Alex. It's not possible to say. You'd have to troubleshoot. Can you enabled debugging or advanced logging for the app? Are there log files for the app installation?
Deletei can try to deploy office 2013 silent deployment i need help if is possible
ReplyDeleteHere you go:
Deletehttp://gerryhampsoncm.blogspot.ie/2013/03/sccm-2012-sp1-step-by-step-guide-part_9368.html
Thank-you so much for your sccm 2012 advise, I'm a newby to this and it got my .exe deploying and uninstalling like a dream.
ReplyDeleteYou're welcome. Glad to help.
DeleteThanks very much for a very helpful post indeed. :)
ReplyDeleteGerry,
ReplyDeleteGreat post but I need help other way round.
We had Adobe Acrobat Installed through Group Policy (Before SCCM) and now I would like to remove it using AdobeAcroCleaner.exe. Unfortunately this is not an installer so there is no Detection Method. How do I deploy and run this? I have manually tested the switches and that works just fine but I am unable to proceed through SCCM.
Thanks
Hi Gerry,
ReplyDeleteDoes this method work for placing CMTrace into Software Center since it technically doesn't "install" ?
Thanks