日期:2014-05-18  浏览次数:20438 次

|M| 疯了500求救:ASP.NET中获取客户端的默认打印机
原贴:http://community.csdn.net/Expert/topic/5682/5682636.xml?temp=.6594812

|M|   发现一个超奇怪的问题:PrinterSettings.PrinterName   取打印机名称的,当在用VS2005的创建文件系统的时候可以,但用IIS创建的就不行  
----------------------------------
后来我又找了一种:
string   printName   =   new   PrintDocument().PrinterSettings.PrinterName.Trim();
string   printStatus   =   "No   default   printer   installed ";
System.Management.ManagementObjectCollection   printers   =   new   System.Management.ManagementClass( "Win32_Printer ").GetInstances();
这里要说我的安全权限问题

环境:
本来的WinForm程序现在要改为WebForm其他的都差不多OK了
现在就只有一个打印怎么来取打印机的问题;
还有一个就是报表的问题

现在在这里问这个打印机的问题;程序一直都不能获取打印机

谢谢   大家帮帮看有没有办法

------解决方案--------------------
你的代码是在服务器端执行的,肯定取不到客户端打印机;
你可以使用ActiveX组件从客户端获取打印机信息;
报表推荐微软报表服务。
------解决方案--------------------
你的代码是在服务器端执行的,肯定取不到客户端打印机;
你可以使用ActiveX组件从客户端获取打印机信息;
报表推荐微软报表服务。

基本就是这么说了
------解决方案--------------------
ActiveX取默认打印机都不是很容易

需要绕个弯做


------解决方案--------------------
不要在服务器端瞎忙活了
你在服务器端的所有代码即便运行正常了,获得的也只是你在服务器端共享的打印机,根本不可能获得客户端运行的共享打印机……
还是老话
ActiveX

------解决方案--------------------
学习
------解决方案--------------------
yangfan369(扬帆远行)
正解