ReportPro 3.60 for XSharp 2.60 memory exception
Posted: Tue Apr 23, 2024 5:40 am
Greetings XSharp developers.
We've encountered some sort of memory exception when printing from ReportPro3:
Application: ReportPro3.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
at ReportPro3_Designer.Functions.ExtTextOut(Void*, Int32, Int32, UInt32, Void*, Void*, UInt32, Int32*)
at ReportPro3_Designer.Functions$DrawFormattedText$.MyExtTextOut(Void*, Int32, Int32, UInt32, VO._winRECT*, Void*, Int32, Int32*)
at ReportPro3_Designer.Functions$DrawFormattedText$._DFTTabbedTextOut(Classmate.cHDC, ReportPro3.DrawFormattedTextStruct*, Int32, Int32)
at ReportPro3_Designer.Functions$DrawFormattedText$._DFTPrintText(Classmate.cHDC, ReportPro3.DrawFormattedTextStruct*)
at ReportPro3_Designer.Functions.DrawFormattedText(Classmate.cHDC, ReportPro3.DrawFormattedTextStruct*)
at ReportPro3.rpField.Print(ReportPro3.rpPrinter, Int32, Int32, Int32, Boolean, System.String)
at ReportPro3.rpSection.PrintBand(ReportPro3.rpBand, Boolean)
at ReportPro3.rpSection.PrintPageBody(Classmate.cPrinter)
at ReportPro3.rpReport.PrintPageBody()
at Classmate.cPrinter._PrintPage()
at Classmate.cPrinter._PrintDoc()
at Classmate.cPrinter._PrintStart()
at Classmate.cPrintMsgDialog.OnTimer(Classmate.cEvent)
at Classmate.cWindow.Dispatch(Classmate.cEvent)
at Classmate.cBaseDialog.Dispatch(Classmate.cEvent)
at Classmate_Gui.Functions._cDialogProc(Void*, UInt32, UInt32, Int32)
at VOWin32APILibrary.Functions.IsDialogMessage(Void*, VO._winMSG*)
at Classmate.cWindow._PreProcessMessage(VO._winMSG*)
at Classmate.cDialog._ModalExec()
at Classmate.cDialog.Show(Int32)
at Classmate.cPrintMsgDialog.Show(Int32)
at Classmate.cPrinter.Print()
at ReportPro3.rpReport.Print()
at ReportPro3.rpDesigner.Menu_Print()
Exception Info: System.Reflection.TargetInvocationException
at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[])
at System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
at XSharp.RT.OOPHelpers.SendHelper(System.Object, System.Reflection.MethodInfo, XSharp.__Usual[], XSharp.__Usual ByRef)
at XSharp.RT.OOPHelpers.SendHelper(System.Object, System.String, XSharp.__Usual[], XSharp.__Usual ByRef)
at XSharp.RT.OOPHelpers.DoSend(System.Object, System.String, XSharp.__Usual[], System.String)
at XSharp.RT.Functions.Send(XSharp.__Usual, XSharp.__Usual, XSharp.__Usual[])
at Classmate.cMenu._ProcessCommandMsg(Classmate.cEvent)
at Classmate.cToolbar._ProcessCommandMsg(Classmate.cEvent)
at Classmate.cWindow.OnCommand(Classmate.cEvent)
at ReportPro3.rpDesigner.OnCommand(Classmate.cEvent)
at Classmate.cWindow.Dispatch(Classmate.cEvent)
at Classmate.cMDIChild.Dispatch(Classmate.cEvent)
at Classmate_Gui.Functions._cMDIChildProc(Void*, UInt32, UInt32, Int32)
at VOWin32APILibrary.Functions.DispatchMessage(VO._winMSG*)
at Classmate.cApp.Exec()
at ReportPro3.cAppEx.Start()
Exception Info: System.Reflection.TargetInvocationException
at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[])
at System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
at XSharp.RT.OOPHelpers.SendHelper(System.Object, System.Reflection.MethodInfo, XSharp.__Usual[], XSharp.__Usual ByRef)
at XSharp.RT.OOPHelpers.SendHelper(System.Object, System.String, XSharp.__Usual[], XSharp.__Usual ByRef)
at XSharp.RT.OOPHelpers.DoSend(System.Object, System.String, XSharp.__Usual[], System.String)
at XSharp.RT.Functions.Send(XSharp.__Usual, XSharp.__Usual, XSharp.__Usual[])
at Classmate_Gui.Functions.CmStart(XSharp.__Symbol)
at ReportPro3.Exe.Functions.Start()
This exception occurs when the report is already rendered and sent to print, and it happens randomly usually on pages above 10 around 70-90% of the time even with the most simple reports with just one field in the body.
We're not sure what is going on since we stumbled upon this problem only last week. We've tried it on 3 different PCs and the problem occurs on all of them.
We've encountered some sort of memory exception when printing from ReportPro3:
Application: ReportPro3.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
at ReportPro3_Designer.Functions.ExtTextOut(Void*, Int32, Int32, UInt32, Void*, Void*, UInt32, Int32*)
at ReportPro3_Designer.Functions$DrawFormattedText$.MyExtTextOut(Void*, Int32, Int32, UInt32, VO._winRECT*, Void*, Int32, Int32*)
at ReportPro3_Designer.Functions$DrawFormattedText$._DFTTabbedTextOut(Classmate.cHDC, ReportPro3.DrawFormattedTextStruct*, Int32, Int32)
at ReportPro3_Designer.Functions$DrawFormattedText$._DFTPrintText(Classmate.cHDC, ReportPro3.DrawFormattedTextStruct*)
at ReportPro3_Designer.Functions.DrawFormattedText(Classmate.cHDC, ReportPro3.DrawFormattedTextStruct*)
at ReportPro3.rpField.Print(ReportPro3.rpPrinter, Int32, Int32, Int32, Boolean, System.String)
at ReportPro3.rpSection.PrintBand(ReportPro3.rpBand, Boolean)
at ReportPro3.rpSection.PrintPageBody(Classmate.cPrinter)
at ReportPro3.rpReport.PrintPageBody()
at Classmate.cPrinter._PrintPage()
at Classmate.cPrinter._PrintDoc()
at Classmate.cPrinter._PrintStart()
at Classmate.cPrintMsgDialog.OnTimer(Classmate.cEvent)
at Classmate.cWindow.Dispatch(Classmate.cEvent)
at Classmate.cBaseDialog.Dispatch(Classmate.cEvent)
at Classmate_Gui.Functions._cDialogProc(Void*, UInt32, UInt32, Int32)
at VOWin32APILibrary.Functions.IsDialogMessage(Void*, VO._winMSG*)
at Classmate.cWindow._PreProcessMessage(VO._winMSG*)
at Classmate.cDialog._ModalExec()
at Classmate.cDialog.Show(Int32)
at Classmate.cPrintMsgDialog.Show(Int32)
at Classmate.cPrinter.Print()
at ReportPro3.rpReport.Print()
at ReportPro3.rpDesigner.Menu_Print()
Exception Info: System.Reflection.TargetInvocationException
at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[])
at System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
at XSharp.RT.OOPHelpers.SendHelper(System.Object, System.Reflection.MethodInfo, XSharp.__Usual[], XSharp.__Usual ByRef)
at XSharp.RT.OOPHelpers.SendHelper(System.Object, System.String, XSharp.__Usual[], XSharp.__Usual ByRef)
at XSharp.RT.OOPHelpers.DoSend(System.Object, System.String, XSharp.__Usual[], System.String)
at XSharp.RT.Functions.Send(XSharp.__Usual, XSharp.__Usual, XSharp.__Usual[])
at Classmate.cMenu._ProcessCommandMsg(Classmate.cEvent)
at Classmate.cToolbar._ProcessCommandMsg(Classmate.cEvent)
at Classmate.cWindow.OnCommand(Classmate.cEvent)
at ReportPro3.rpDesigner.OnCommand(Classmate.cEvent)
at Classmate.cWindow.Dispatch(Classmate.cEvent)
at Classmate.cMDIChild.Dispatch(Classmate.cEvent)
at Classmate_Gui.Functions._cMDIChildProc(Void*, UInt32, UInt32, Int32)
at VOWin32APILibrary.Functions.DispatchMessage(VO._winMSG*)
at Classmate.cApp.Exec()
at ReportPro3.cAppEx.Start()
Exception Info: System.Reflection.TargetInvocationException
at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[])
at System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
at XSharp.RT.OOPHelpers.SendHelper(System.Object, System.Reflection.MethodInfo, XSharp.__Usual[], XSharp.__Usual ByRef)
at XSharp.RT.OOPHelpers.SendHelper(System.Object, System.String, XSharp.__Usual[], XSharp.__Usual ByRef)
at XSharp.RT.OOPHelpers.DoSend(System.Object, System.String, XSharp.__Usual[], System.String)
at XSharp.RT.Functions.Send(XSharp.__Usual, XSharp.__Usual, XSharp.__Usual[])
at Classmate_Gui.Functions.CmStart(XSharp.__Symbol)
at ReportPro3.Exe.Functions.Start()
This exception occurs when the report is already rendered and sent to print, and it happens randomly usually on pages above 10 around 70-90% of the time even with the most simple reports with just one field in the body.
We're not sure what is going on since we stumbled upon this problem only last week. We've tried it on 3 different PCs and the problem occurs on all of them.