using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Drawing;
using System.Drawing.Printing;namespace testPrint
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
try
{
e.Graphics.TranslateTransform(415,320);
e.Graphics.RotateTransform(90);
e.Graphics.DrawString("编号", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 0, 0);
e.Graphics.DrawString("年", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, -100, 100);
e.Graphics.DrawString("月", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 10, 100);
e.Graphics.DrawString("日", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 100, 100);
e.Graphics.DrawString("年", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 200, 100); e.Graphics.DrawString("月", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 300, 100);
e.Graphics.DrawString("日", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 350, 100); }
catch
{
throw;
}
} private void button1_Click(object sender, EventArgs e)
{
this.printPreviewDialog1.ShowDialog();
} private void button2_Click(object sender, EventArgs e)
{
try
{
if (printDialog1.ShowDialog() == DialogResult.OK)
{
//this.printDocument1.PrintController = new System.Drawing.Printing.StandardPrintController();
this.printDocument1.Print();
}
}
catch(Exception err)
{
MessageBox.Show(err.Message);
//printDocument1.PrintController.OnEndPrint(printDocument1, new System.Drawing.Printing.PrintEventArgs());
}
}
}
}高手帮我看看这段代码有什么问题,在别人电脑上可以正常运行,我的电脑上就报内存错误
错误描述是:
System.AccessViolationException
不能写入受保护的内存,这通常表示该内存已经损坏
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Drawing;
using System.Drawing.Printing;namespace testPrint
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
try
{
e.Graphics.TranslateTransform(415,320);
e.Graphics.RotateTransform(90);
e.Graphics.DrawString("编号", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 0, 0);
e.Graphics.DrawString("年", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, -100, 100);
e.Graphics.DrawString("月", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 10, 100);
e.Graphics.DrawString("日", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 100, 100);
e.Graphics.DrawString("年", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 200, 100); e.Graphics.DrawString("月", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 300, 100);
e.Graphics.DrawString("日", new Font(this.Font, System.Drawing.FontStyle.Regular), Brushes.Black, 350, 100); }
catch
{
throw;
}
} private void button1_Click(object sender, EventArgs e)
{
this.printPreviewDialog1.ShowDialog();
} private void button2_Click(object sender, EventArgs e)
{
try
{
if (printDialog1.ShowDialog() == DialogResult.OK)
{
//this.printDocument1.PrintController = new System.Drawing.Printing.StandardPrintController();
this.printDocument1.Print();
}
}
catch(Exception err)
{
MessageBox.Show(err.Message);
//printDocument1.PrintController.OnEndPrint(printDocument1, new System.Drawing.Printing.PrintEventArgs());
}
}
}
}高手帮我看看这段代码有什么问题,在别人电脑上可以正常运行,我的电脑上就报内存错误
错误描述是:
System.AccessViolationException
不能写入受保护的内存,这通常表示该内存已经损坏
如果是的话就是你机器的服务Print Spooler 服务被关掉了!