PDA

View Full Version : Chain MSI Installation Error



guyalgo
01-10-2017, 07:22 AM
Hello,

We are using installshield 2016 pro edition.
When we install crystal reports V13 as a chain MSI we are getting the folowing error:

Error 1904.Module C:\Program Files\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86\crtslv.dll failed to register. HRESULT -2147010895. Contact your support personnel.


However when installing the Crystal Reposrts MSI as a standalone MSI the installation finish successfully.

I have seen solutions to fix that problem, however all solutions have required to install VCRedist prior to install Crstal a chain MSI.
Since our installation is MSI and not setup.exe we can't add installation of VCRedist prior to Chain MSI execution. and if we add it in the chain MSI it doesn't help.

We will be grateful for any suggestions to fix that problem.

Thanks

chad.petersen
01-10-2017, 03:14 PM
Maybe a question or two first?

You said "However when installing the Crystal Reposrts MSI as a standalone MSI the installation finish successfully."

Is that without installing the particular VCRedist first? If so, that sounds a little odd and I would expect there to be more to that story.

If I reference this information

https://archive.sap.com/discussions/thread/2029419

It sounds like a good recommendation would be to use Dependency Walker to see what the crtslv.dll thinks is missing from the system when the error occurs. If you can pinpoint the exact DLL(s) that it wants it might be helpful.

One thought, if you need the VCRedist but can't get it installed along with your stuff in such a way as to avoid the error, then it might be possible to do a System Search for that particular DLL(s), even by version, and if not found throw up a message asking them to install the VCRedist manually first.

You could still provide the VCRedist so they would not have to go looking for it on the internet.

On a related note - The VCRedist.exe typically unpacks itself into a TEMP folder so you can then find the MSI and inspect it some to see what it is doing. Registry keys, files it delivers, etc.

Another idea would be to use the "Prerequisite Editor" under the "Tools" menu in InstallShield. This tool allows a person to package things into a .PRQ file that you can then reference like any other redistributable that is in the default list. I used this with a product I had to install called Synergy/DE that didn't provide us with a merge module so I encapsulated the MSI and Setup.exe, etc, files from them into a .PRQ file and the problem was solved in that manner. I was able to work with Synergy on the solution in this case and they made the information into a KB article for their own future use.

Maybe something I've mentioned proves helpful or sparks an idea?

I often will let an installer sit with the error displayed and then go into the folder where the DLL throwing the error lives and try to manually register it using REGSVR32. If it throws a similar error at that moment to what the installer is throwing then you have at least verified the issue occurs both inside and outside of the installer, or if not then it gives you a chance to see "why not".

Chad

chad.petersen
01-10-2017, 04:51 PM
Oh, you had said you use an MSI - do you have a reason to not use a Setup.exe? You can still pass command line parameters to the MSI when running through the Setup.exe, if that was the issue.

If your only choice is the chained MSI and the VCRedist needs to be installed first then it would seem to up a message letting them know to go install it first might not be a bad way to go.

Chad

guyalgo
01-11-2017, 04:36 AM
When installing crystal reports as a standalone MSI without installing first VCRedist, the installation finish successfully.

chad.petersen
01-11-2017, 10:04 AM
But if you run Crystal Repoirts as a chained installer then you get the error. Sounds horrendous to me. No idea how you fix that. Maybe talk to Business Associates and see if they have a preferred way to install their product.

Chad