C# 调用共享打印机问题

summonyyq 2011-07-11 10:32:56
C# 通过 打印机名 调用指定打印机打印程序。
本地的打印机可以正常打印出来。
但如果是共享的打印机,就没反应了。
共享的打印机不能和本地打印机一样,通过名字来调用吗?求解
...全文
1221 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhang_yugang 2014-03-19
  • 打赏
  • 举报
回复
引用 3 楼 summonyyq 的回复:
[Quote=引用 2 楼 chengjia2284 的回复:] 你应该把你机器上的默认打印机设置成网络上的共享打印机就行了 [/Quote] 我是通过 调用打印机名 来调用的打印机的,不是默认的。(PS默认连接另一台打印机)
光写名字还不行,还必须有打印机所在机器的名字: 格式为: ActiveReport rpt = (ActiveReport)obj; rpt.Document.Printer.PrinterSettings.PrinterName = @"\\EYTP-XXX\CyPLATE"; rpt.Document.Print(false, false, false);
meitp365 2011-08-16
  • 打赏
  • 举报
回复
关注!
summonyyq 2011-07-14
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 gj462375513 的回复:]
引用 11 楼 summonyyq 的回复:
引用 5 楼 gj462375513 的回复:
可以,把printDocument.PrinterSettings.PrinterName ="打印机名称"就行了


就是类似这样的调用,本地的,赋上打印机名没问题,但共享打印机的名字,用哪个名字(本地共享名字和原电脑上的打印机名)都不行


那需要路径才行 比如\\192.168.1.……
[/Quote]

就是少了个路径,问题解决了。
揭帖给分,谢谢
summonyyq 2011-07-11
  • 打赏
  • 举报
回复
顶顶。。。
summonyyq 2011-07-11
  • 打赏
  • 举报
回复
网络打印机正常,它自带的打印测试可以打印

网络打印机的名字,就是它显示的那个吗?(不能修改的那个名字)
至尊贱客 2011-07-11
  • 打赏
  • 举报
回复
可以,把printDocument.PrinterSettings.PrinterName ="打印机名称"就行了
51Crack 2011-07-11
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 gj462375513 的回复:]
那需要路径才行 比如\\192.168.1.100\HP LaserJet M1522 MFP Series PCL 6
[/Quote]
用程序取一下所有打印机,看一下名字就知道了
For i = 0 To PrinterSettings.InstalledPrinters.Count - 1
'PrinterSettings.InstalledPrinters.Item(i)
Next
九章落地 2011-07-11
  • 打赏
  • 举报
回复
应该是可以的。如果打印机正常,网络共享打印机通过打印机名调用(Printdocument)也能打印的呢。



------------
[店家乐服装店管理软件,店家乐服装店软件,店家乐服装收银软件,店家乐服装销售管理系统]_http://www.djlsoft.net
summonyyq 2011-07-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 chengjia2284 的回复:]
你应该把你机器上的默认打印机设置成网络上的共享打印机就行了
[/Quote]
我是通过 调用打印机名 来调用的打印机的,不是默认的。(PS默认连接另一台打印机)
chengjia2284 2011-07-11
  • 打赏
  • 举报
回复
你应该把你机器上的默认打印机设置成网络上的共享打印机就行了
summonyyq 2011-07-11
  • 打赏
  • 举报
回复
万能的论坛,又了解的吗? 在线求解
xixihaha_2011_098 2011-07-11
  • 打赏
  • 举报
回复
你把网络打印机,添加到本机了吗?
yujia4616 2011-07-11
  • 打赏
  • 举报
回复
用PageSetupDialog dialog = new PageSetupDialog();
至尊贱客 2011-07-11
  • 打赏
  • 举报
回复
你可以遍历系统和网络上的打印机,然后放在下拉框中去选择你需要的打印机,
最后取出路径赋给printDocument.PrinterSettings.PrinterName 去打印
至尊贱客 2011-07-11
  • 打赏
  • 举报
回复
所以要想用网络才、打印机就必须先调用网络打印机的路径
至尊贱客 2011-07-11
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 summonyyq 的回复:]
引用 5 楼 gj462375513 的回复:
可以,把printDocument.PrinterSettings.PrinterName ="打印机名称"就行了


就是类似这样的调用,本地的,赋上打印机名没问题,但共享打印机的名字,用哪个名字(本地共享名字和原电脑上的打印机名)都不行
[/Quote]

那需要路径才行 比如\\192.168.1.100\HP LaserJet M1522 MFP Series PCL 6
summonyyq 2011-07-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 gj462375513 的回复:]
可以,把printDocument.PrinterSettings.PrinterName ="打印机名称"就行了
[/Quote]

就是类似这样的调用,本地的,赋上打印机名没问题,但共享打印机的名字,用哪个名字(本地共享名字和原电脑上的打印机名)都不行
summonyyq 2011-07-11
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 gj462375513 的回复:]
你用什么调用的打印机啊
[/Quote]
就是用打印机名来调用不同的打印机啊
至尊贱客 2011-07-11
  • 打赏
  • 举报
回复
你用什么调用的打印机啊

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧