使用IP地址打印到网络打印机

我想发送文件名和打印机的IP地址来指定要打印的打印机。

我收到一条错误消息“访问打印机的设置’xxx.xxx.xxx.xxx’无效。” 当我到printdoc.Print()。

如何根据IP地址设置要打印的打印机?

printdoc = new PrintDocument(); printdoc.PrinterSettings.PrinterName = IPAddress.Trim; printdoc.DocumentName = FileName; printdoc.Print(); 

如何解决这个问题?它的ac#vs2010独立Windows应用程序

您的打印机是否可以在网络中访问您运行软件的机器?

http://msdn.microsoft.com/en-us/library/system.drawing.printing.printersettings.printername.aspx

如您所见,您应该调用IsValid来确定一切是否正常,您还可以使用InstalledPrinters属性来获取系统上安装的打印机列表。 我猜您没有正确安装打印机,或者您没有足够的权限或类似的东西。

编辑:如果使用名称工作,这应该做的诀窍: 如何从C#网络上的IP访问打印机名称?

您无法使用IPAddress。 必须已在您的机器上安装打印机。

在某些系统上,该function仅供管理员使用,因此您的应用程序不应该创建打印机。 毕竟,您也没有适用于所有打印机类型的驱动程序。

您的应用只能获取已安装的打印机的名称。 您不能只使用IP地址。