It seems to be working fine on my development machine, or the Windows XP test machines, but I'm running into problems on the Windows 7 test machines.
After that, I get a normal crash error:
************** Exception Text ************** System.InvalidOperationException: An error occurred creating the form. See Exception.InnerException for details. The error is: The type initializer for 'CrystalDecisions.CrystalReports.Engine.ReportDocument' threw an exception. ---> System.TypeInitializationException: The type initializer for 'CrystalDecisions.CrystalReports.Engine.ReportDocument' threw an exception. ---> CrystalDecisions.CrystalReports.Engine.LoadSaveReportException: An error has occurred while attempting to load the Crystal Reports runtime. Either the Crystal Reports registry key permissions are insufficient or the Crystal Reports runtime is not installed correctly. Please install the appropriate Crystal Reports redistributable (CRRedist*.msi) containing the correct version of the Crystal Reports runtime (x86, x64, or Itanium) required. Please go to http://www.businessobjects.com/support for more information. at CrystalDecisions.CrystalReports.Engine.ReportDocument.CheckForCrystalReportsRuntime() at CrystalDecisions.CrystalReports.Engine.ReportDocument..cctor() --- End of inner exception stack trace --- at CrystalDecisions.CrystalReports.Engine.ReportDocument..ctor() at CrystalDecisions.CrystalReports.Engine.ReportClass..ctor() at Processing.LogTag..ctor() at Processing.frmPrint.InitializeComponent() at Processing.frmPrint..ctor() --- End of inner exception stack trace ---
Their website is of course a nightmare to find anything…
Note: It is Windows 7 64bit, but I'm already running the program in 32bit mode.
So I figured out that crystal reports has an issue where the x64 version doesn't have any initializers, and so trying to initialize it in my program is causing an error.
I have verified that if I uninstall the x64 version, and install the x86 32bit version, the program works fine. I've read that some people had sucess just running the program in 32bit mode, but for whatever reason that didn't work for me.
I'm leaving the question open for a little bit, in hopes that someone has figured out how to get it to initialize the 64 bit version, because that's what automatically installs from the click once setup.