我使用以下代码将我的打印文档保存为应用程序启动路径中的XPS:
PrintDocument pd = new PrintDocument();
pd = PreparePrintDocument();
pd.PrinterSettings.PrintFileName = Application.StartupPath+"\\backup.xps";
pd.PrinterSettings.PrintToFile = true;
pd.PrinterSettings.PrinterName = "Microsoft XPS Document Writer";
pd.Print();
pd.Dispose();
这在某些PC中运行良好,但在其他一些PC中会发生以下错误:
“尝试读取或写入受保护的内存。这通常是一个 表明其他内存已损坏。“
当我将默认打印机设置为XPS时,代码可以在所有系统中运行,但是当我将其更改为网络打印机时,会再次出现错误。
答案 0 :(得分:1)
尝试使用"使用"阻止而不是自己处理文档:
{{1}}