我有一个C#windows服务,该服务在 NetworkService 帐户下运行。它偶尔需要打印一个Chart对象,我只需要调用:
chart.Printing.Print(false); // suppress the Printer Dialog
奇怪的是它似乎可以作为控制台应用程序运行。
唯一可行的方法是在本地管理员帐户下运行服务。
答案 0 :(得分:3)
您可能需要为System.Drawing.Printing.PrintingPermission授予访问权限。阅读the documentation,您会发现以下内容:
中的类 System.Drawing.Printing命名空间是 不支持在Windows中使用 服务或ASP.NET应用程序或 服务。试图使用这些 来自其中一个的课程 应用类型可能会产生 意想不到的问题,比如 服务绩效下降 运行时异常。