【发布时间】:2011-03-26 05:22:41
【问题描述】:
我在 ASP.NET 和 c# 中有一个 Web 应用程序。是否可以在连接到服务器的特定打印机上打印所有打印按钮单击..?? 即,如果单击客户端计算机上的打印按钮,则在与服务器连接的打印机上进行打印....
如果有人知道这个请帮助我.....提前谢谢
【问题讨论】:
我在 ASP.NET 和 c# 中有一个 Web 应用程序。是否可以在连接到服务器的特定打印机上打印所有打印按钮单击..?? 即,如果单击客户端计算机上的打印按钮,则在与服务器连接的打印机上进行打印....
如果有人知道这个请帮助我.....提前谢谢
【问题讨论】:
您要打印什么类型的文档?服务器需要一种方法来执行应用程序并调用打印命令。 StackOverflow 上有很多相关问题 ->
【讨论】:
我找到了一种与您描述的类似的方法,但这远非易事。
当用户按下打印时,需要打印的文档以字节数组的形式写入数据库表中,该表还具有“已打印”标志(默认为 false)和所选打印机的名称。
在托管数据库的服务器上,我构建并添加了一个轮询数据库表的 Windows 服务,以查看表上是否有任何将“打印”设置为 false 的文档。如果它找到任何它读取字节数组并将其传递到指定的打印机(将打印标志设置为 true)。
问题
您必须为服务登录详细信息提供足够的权限才能访问打印机
Web 服务不支持 system.Printing 或 system.drawing.printing 名称空间,因此我必须使用 TcpClient、打印机的 IP 地址和端口 9100 连接到打印机(这是原始打印的默认端口) .然后我将流直接传递到端口。这行得通,但我只需要打印我的网络打印机能够支持的 PDF。
有关打印原始数据的更多信息,请参阅here
我不建议完全按照我的描述做,但希望这能给你一些想法
【讨论】: