c# - 是什么导致 System.Drawing.Printing.PrinterSettings.InstalledPrinters 抛出 Win32Exception "RPC server not available"?

标签 c# .net printing

我有一个正在处理的应用程序,我允许用户在从该应用程序打印表单时选择一台打印机作为他们的打印机。我正在使用 .NET 2.0

在设置界面,我调用

System.Drawing.Printing.PrinterSettings.InstalledPrinters 

获取可用打印机的列表。

在客户端的机器上,该属性抛出异常:

System.ComponentModel.Win32Exception: The RPC server is unavailable

客户报告 Windows 显示他的打印机“就绪”,并且客户可以从打印机打印测试页。但是,我无法在本地重现此问题,而且我的想法已经用完了。有谁知道可能导致此问题的原因吗?任何想法或方向都会有所帮助。谢谢

最佳答案

我在 Windows 7 中也遇到过同样的事情。在服务 中停止和启动打印后台处理程序会修复,直到它再次发生。

以下命令可以快速完成此操作:

net stop "print spooler"
net start "print spooler"

注意:以管理员身份运行命令提示符。我制作了一个批处理文件来执行此操作,因为它在开发期间每天发生 4-5 次。

关于c# - 是什么导致 System.Drawing.Printing.PrinterSettings.InstalledPrinters 抛出 Win32Exception "RPC server not available"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/734628/

相关文章:

c# - Xamarin.Forms:Oxyplot 占用整个页面

c# - 为什么我的任务没有取消?

c# - 如何结合 Service Fabric Remoting 进行分区

c# - 为什么 C# 能够复制结构的内存但不能测试相等性?

c++ - 在打印机上打印(windows平台32位)

c# - 如何使 .NET Core 6 顶级语句模板异步?

c# - 读取 XmlDocument 中元素的行号和字符位置

c# - MEF - 帮助理解容器和组合发生了什么

c# - 如何在 C# 中使用 PrintDialog 打印文档

angular - 如何在 ionic-Angular 中将数据传递到另一个页面