单击CrViewer打印按钮时“尝试读取或写入受保护的内存..”错误

时间:2012-05-14 05:35:05

标签: memory printing crystal-reports protected

我在Crystal Report Viewer的打印按钮上收到错误“尝试读取或写入受保护的内存..”。此错误是随机的,有时报告打印时没有任何错误。有时它会给出错误,因为“句柄无效”。我已尝试在互联网上提供2-3个解决方案,例如取消选中“抑制JIT优化...”选项,但没有任何对我有用。请帮忙!! (其他详细信息:Crystal Reports 2011,Crystal Reports for VS2010版本13.0.2,C#2010 winforms应用程序)

2 个答案:

答案 0 :(得分:1)

我仅在Windows7 64位上遇到此问题,而Windows6.1-KB2695321-v2-x64修补程序解决了这个问题。

我使用Windows Hotfix Downloader下载此修补程序。

我希望这会有所帮助。

答案 1 :(得分:0)

我用这种方法来避免这个问题:

  1. 在水晶报表查看器中将show print按钮设置为false
  2. 向工具条添加自定义按钮,请查看以下链接: http://www.manjuke.com/2011/08/invoke-custom-method-when-crystal.html
  3. 将Eventhandler设置为新的自定义按钮,并在其中设置代码以直​​接打印到打印机

    cr1.PrintToPrinter(1, false, 0, 0);
    
  4. 直接打印到打印机时,问题不会出现。 或者您可以创建printdialog并使用它来打印报告 我做到了,一切正常