1 of 1 people found this helpful
Hmmm... so first we need to clarify an apparent conflict in the information presented.
You stated that you are attempting to deploy an EXE file, but the error presented is an MSI installer error. This suggests that there may be an MSI file embedded in that EXE, and that MSI is not successfully terminating and/or returning a completion code to the WUAgent.
The first thing to do would be to enable detailed MSI logging on the client system (you can do this via the Check & Manage Computer Connectivity utility), and then relaunch the deployment. Review the resulting detail MSI log which may provide additional information.
Another approach would be to extract the MSI from the EXE wrapper and build a package around the MSI. Whether this approach will work depends on what else the EXE wrapper is intended to do on the client. If it's just a delivery mechanism, then there shouldn't be any issues; however, if the EXE is designed to perform any pre-installation "stuff", this may not be an option.
One of the typical causes of an installer "running indefinitely" is that it's trying to generate UI, and in the case of a WUAgent deployment, there's no UI to talk to. A well designed installer would trap that fault and return an installation failure, but in my observations, that doesn't always happen as it should.
Another possible cause.. you were able to run the installer silently from an interactive login, but sometimes an interactive login has access to resources that a WUAgent installation might not, so double check with the vendor for any differences between an interactive-silent installation and a true unattended installation (which is what the WUAgent will require). This could also be a manifestation of using the "personal" client versus the "enterprise" client. That is to say, installing via the WUAgent/WSUS/Patch Manager may require you to use the Enterprise Client.
Some executables extract an msi for install but that might not be apparent by directly extracting the exe. A good example of this would be java. I would suggest running procmon from the sysinternals suite and launching the installer normally but not proceed through the install. You can filter the results down to just actions taken by the desired exe and you should be looking for file creations. If the exe is a wrapper for an msi you should see the exe create the msi in a temp directory somewhere on your system which you can then grab and use for your package.