My program was written in VB6 with ADO 2.6 and Crystal Reports 8 using TTX files as design datasources. I updated to CR9 because there were problems compiling CR8 under XP. My installation is written with InstallShield Express 4 and uses the Crystal Reports9 Merge Modules.
The problem did not occur with CR8. With the new CR9 version it does not occur under Windows XP. It occurs only when I run it on a clean Windows 2000 machine (a virtual machine using VMWare). When the program tries to set the report data source it crashes with a run time error. The line of code that failed is
Report.Database.SetDataSource rs
where Report is a Crystal Reports report object and rs is an ADO recordset.
The message title is Microsoft Visual C++ Runtime Library. The message text is Abnormal program termination. This occurs when running under Windows 2000 but not under Windows XP.
I constructed a much smaller program using the same techniques to see if I could reproduce the problem and shed any light on it. I thought perhaps there was some kind of corruption within my main program and that I could avoid this be starting from scratch. However the test program showed exactly the same symptoms.
I tried an alternative method of populating the report using
Report.Database.AddADOCommand.
Again this ran happily on the development machine (Windows XP) but failed at this line under Windows 2000. In this case the rte message was failed to load database information - Crdb_ado.dll could not be loaded
Crystal Decisions Knowledge Base suggests this could be because msvcp60.dll is missing but it is present.
InstallShield KB suggests a problem if atl.dll is missing but it is present.
I still think the cause may be some kind of corruption at some stage in the process. I desperately someone with the right expertise to help me understand what is going on and how to put it right. Can anyone help?
The problem did not occur with CR8. With the new CR9 version it does not occur under Windows XP. It occurs only when I run it on a clean Windows 2000 machine (a virtual machine using VMWare). When the program tries to set the report data source it crashes with a run time error. The line of code that failed is
Report.Database.SetDataSource rs
where Report is a Crystal Reports report object and rs is an ADO recordset.
The message title is Microsoft Visual C++ Runtime Library. The message text is Abnormal program termination. This occurs when running under Windows 2000 but not under Windows XP.
I constructed a much smaller program using the same techniques to see if I could reproduce the problem and shed any light on it. I thought perhaps there was some kind of corruption within my main program and that I could avoid this be starting from scratch. However the test program showed exactly the same symptoms.
I tried an alternative method of populating the report using
Report.Database.AddADOCommand.
Again this ran happily on the development machine (Windows XP) but failed at this line under Windows 2000. In this case the rte message was failed to load database information - Crdb_ado.dll could not be loaded
Crystal Decisions Knowledge Base suggests this could be because msvcp60.dll is missing but it is present.
InstallShield KB suggests a problem if atl.dll is missing but it is present.
I still think the cause may be some kind of corruption at some stage in the process. I desperately someone with the right expertise to help me understand what is going on and how to put it right. Can anyone help?