一个打印程序,使用水晶报表,printtoprinter(1,false,0,0),这行代码在我电脑上运行没问题(winxp,vs2010,水晶报表13 for vs2010),在我电脑可以正常打印,程序编译后放到服务器上(win2008 sp1 32位),程序运行没问题,就是最后一步打印到打印机时程序失去响应,后我在服务器上安装c#2010 express版调试程序,在运行到以上代码时提示:“尝试读取或写入受保护的内存"等信息,执行不了,我查看打印机,发现打印机中已有打印任务,不过也是不打印。
服务器已经正常安装了水晶报表runtime13.
代码如下:
PrintDialog print = new PrintDialog();
if (print.ShowDialog () == System.Windows.Forms.DialogResult.Cancel) {
return;
}
printname = print.PrinterSettings.PrinterName;// printDialog.PrinterSettings.PrinterName;
if (printname.Length > 0)
{
mo1.PrintOptions.PrinterName = printname;
//设置页面
CrystalDecisions.Shared.PageMargins margins = new CrystalDecisions.Shared.PageMargins();
margins.rightMargin = 3;
mo1.PrintOptions.ApplyPageMargins(margins);
mo1.PrintToPrinter(1, false, 0, 0); //在这里出现错误,在开发的电脑上运行正常
}不知道是什么原因造成错误?
服务器已经正常安装了水晶报表runtime13.
代码如下:
PrintDialog print = new PrintDialog();
if (print.ShowDialog () == System.Windows.Forms.DialogResult.Cancel) {
return;
}
printname = print.PrinterSettings.PrinterName;// printDialog.PrinterSettings.PrinterName;
if (printname.Length > 0)
{
mo1.PrintOptions.PrinterName = printname;
//设置页面
CrystalDecisions.Shared.PageMargins margins = new CrystalDecisions.Shared.PageMargins();
margins.rightMargin = 3;
mo1.PrintOptions.ApplyPageMargins(margins);
mo1.PrintToPrinter(1, false, 0, 0); //在这里出现错误,在开发的电脑上运行正常
}不知道是什么原因造成错误?
解决方案 »
- 这段程序代码搞不清楚了
- 哪位高手能帮下我呀。
- sql2005中的xml如何取出来加载到XmlDocument中?
- c#如何做除法,5/2=3,3/2=2
- 我写了一个类,继承了一个接口,我又修改了接口的一个函数的参数,算不算实现了这个接口啊
- 最新消息,Intel已经开发出MSIL加速卡,.NET程序的运行速度将至少比现在提高100倍!
- 急,问题,求解?
- ******ASP.NET回传值是否会被用户修改********
- 怎样减少程序占有内存量
- ★★★ C# 学了那么久,除了一些APS.NET ,WINDOWS下的程序,我真的不知道它还能做什么??
- c#2010 dataset存储图片问题?
- 关于“尝试读取或写入受保护的内存。这通常指示其他内存已损坏”的问题!!
如果是Web程序,你的代码是在服务器端执行的,客户端怎么能看到打印的东西呢?
试试
看例子,
http://msdn.microsoft.com/zh-cn/library/ms226031(VS.80).aspx也没有什么错误。
这种错误不一定是代码导致的,可能跟系统或者安装的某些软件冲突导致有关系。