System.Printing.PrintServerException: An exception occurred while creating the PrintServer object. Win32 error: Access is denied as a windows service
System.Printing.PrintServerException: An exception occurred while creating the PrintServer object. Win32 error: Access is denied as a windows service
我已经在 Stack 上解决了类似的问题 overflow.But 仍然无法解决我的问题
我正在尝试通过用 c# 编写的 windows 服务访问网络共享打印机。
当我 运行 通过开发环境时,它工作正常。
但是在创建安装程序并 运行 喜欢它作为后台服务之后,我收到如下错误
**
"System.Printing.PrintServerException: An exception occurred while
creating the PrintServer object. Win32 error: Access is denied"
**
这里我给出了我的代码
using (PrintServer networkPrintServer = new PrintServer(networkPrinterServer))
{
using (PrintQueue networkPrintQueue = new PrintQueue(networkPrintServer, networkPrinterName,PrintSystemDesiredAccess.AdministratePrinter
))
{
PrintSystemJobInfo printJob = networkPrintQueue.AddJob(networkPrinterName);
networkPrintQueue.Refresh();
printJob.Refresh();
printJob.JobStream.Write(bytesToPrint, 0, bytesToPrint.Length);
printJob.JobStream.Close();
return PrinterSuccessfullyCompletedPrintJob;
}
}
尝试从任何 windows 管理员帐户角色 运行 您的服务。
我已经在 Stack 上解决了类似的问题 overflow.But 仍然无法解决我的问题 我正在尝试通过用 c# 编写的 windows 服务访问网络共享打印机。 当我 运行 通过开发环境时,它工作正常。 但是在创建安装程序并 运行 喜欢它作为后台服务之后,我收到如下错误 **
"System.Printing.PrintServerException: An exception occurred while creating the PrintServer object. Win32 error: Access is denied"
**
这里我给出了我的代码
using (PrintServer networkPrintServer = new PrintServer(networkPrinterServer))
{
using (PrintQueue networkPrintQueue = new PrintQueue(networkPrintServer, networkPrinterName,PrintSystemDesiredAccess.AdministratePrinter
))
{
PrintSystemJobInfo printJob = networkPrintQueue.AddJob(networkPrinterName);
networkPrintQueue.Refresh();
printJob.Refresh();
printJob.JobStream.Write(bytesToPrint, 0, bytesToPrint.Length);
printJob.JobStream.Close();
return PrinterSuccessfullyCompletedPrintJob;
}
}
尝试从任何 windows 管理员帐户角色 运行 您的服务。