string strPrinterName;
System.Drawing.Printing.PrintDocument printdoc = new PrintDocument();
strPrinterName = printdoc.PrinterSettings.PrinterName;这个是我在网上找了的取默认打印机的
然后我就在我的代码里面写,但都是提示:未设置默认打印机。
但当你用的是文件系统创建的网站的时候,又可以正确得到你的打印机!

解决方案 »

  1.   

    1、在页面的代码头部处加入JavaScript:<script language=javascript>
    function doPrint() { 
    bdhtml=window.document.body.innerHTML; 
    sprnstr="<!--startprint-->"; 
    eprnstr="<!--endprint-->"; 
    prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17); 
    prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr)); 
    window.document.body.innerHTML=prnhtml; 
    window.print(); 
    }
    </script>  2、在页面正文处加上<!--startprint-->与<!--endprint-->标识。也就是在需要用户打印保存的正文所对应的html处附加上。  3、截取内容部分已完成,现在加个“打印”的链接:<a href="javascript:;" onClick="doPrint()">打印教程</a>
    可以这样实现 !!!
    而你那打印机名字写死了 ..
    这样在客户端怎么运行 ??总不能叫客户跑来你们公司打印吧!!!!
      

  2.   

    web上好像无法找到本地打印机!试试别的打印方法吧!我也遇到了同样的问题!找了不少资料,似乎不太好解决呢!实在不行干脆用office导出数据再打印!
      

  3.   

    不是写死了 是没有写  默认能找到本地的打印机 我用C/S写的时候  没有问题   B/S不发布就没问题  在VS2005怎么运行都可以  到了IIS上就不能用了