当前位置:首页>>开发编程>>ASP>>新闻内容
如何在ASP中实现网络打印功能
作者:BADBOY炜 发布时间:2004-6-19 20:54:45 文章来源:蓝色理想

使用到的技术:
ASP,WSH,VBScript
文件ASPPrint.asp代码如下:

 
  <%@ Language=VBScript %>
  <%
  Option Explicit

  Dim strSubmit         'Form中用来保存提交按钮的值
  Dim strPrinterPath    'Form中保存网络打印机路径的值
  Dim strUsername       'Form中用户名的值
  Dim strPassword       'Form中密码的值
  Dim strMessage        'Form打印内容的值
  Dim objFS             'VBScript中的文件系统对象
  Dim objWSHNet         'WSH中的网络对象
  Dim objPrinter        '打印对象

  strSubmit = Request.Form("Submit")
  %>

  <HTML>
  <HEAD>
  <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
  </HEAD>
  <BODY>

  <%
  If strSubmit = "" Then
  %>

  注意的是:
      由于我是演示起见,其中有关NT的帐号和密码都是使用了不加密的手段在
ASP中传递的
  真正的运用中应该对该登录过程进行安全处理。
  <FORM action="ASPPrint.asp" method=POST id=form name=form>
     <TABLE WIDTH=100% ALIGN=center BORDER=0 CELLSPACING=1 CELLPADDING
=1>
        <TR>
           <TD ALIGN=right NOWRAP>网络打印机路径:</TD>
           <TD ALIGN=left NOWRAP><INPUT type="text" id=printerpath nam
e=printerpath 
              value="\\< Domain >\< Printer >"></TD>
        </TR>
        <TR>
           <TD ALIGN=right NOWRAP>登录帐号:</TD>
           <TD ALIGN=left NOWRAP><INPUT type="text" id=username name=u
sername 
              value="<% = strUsername %>"></TD>
        </TR>
        <TR>
           <TD ALIGN=right NOWRAP>登录口令:</TD>
           <TD ALIGN=left NOWRAP><INPUT type="password" id=password 
              name=password></TD>
        </TR>
        <TR>
           <TD ALIGN=right NOWRAP>请输入你想打印的文字:</TD>
           <TD ALIGN=left NOWRAP><TEXTAREA rows=2 cols=20 id=message 

              name=message></TEXTAREA></TD>
        </TR>
        <TR>
           <TD ALIGN=right NOWRAP> </TD>
           <TD ALIGN=left NOWRAP><INPUT type="submit" value="Submit" 

              id=submit name=submit></TD>
        </TR>
     </TABLE>
  </FORM>

  当以上信息被提交后,就可以按照下面的代码进行打印了。
  <%
  Else
     ' 从form中取得响应信息。
     strPrinterPath = Request.Form("printerpath")
     strUsername = Request.Form("username")
     strPassword = Request.Form("password")
     strMessage = Request.Form("message")

  We will now use the VBScript FileSystemObject object and the WSH Net
work object. The Network object will
  give us the methods we need to open a printer connection, and the Fi
leSystemObject will allow us to stream our
  output to the printer. We create these objects in the following code
 example: 

     Set objFS = CreateObject("Scripting.FileSystemObject")
     Set objWSHNet = CreateObject("WScript.Network")
     ' 使用WSH连接网络打印机
     objWSHNet.AddPrinterConnection "LPT1", strPrinterPath, False, str
Username, strPassword
     ' 使用文件系统对象将打印设备作为一个文件使用
     Set objPrinter = objFS.CreateTextFile("LPT1:", True)
     ' 给打印设备送出文本
     objPrinter.Write(strMessage)
     '关闭打印设备对象并进行错误陷阱处理
     On Error Resume Next
     objPrinter.Close
     ' 如果发生错误,关闭打印连接,并输出错误信息
     If Err Then
        Response.Write ("Error # " & CStr(Err.Number) & " " & Err.Desc
ription)
        Err.Clear    
     Else
        ' 操作成功,输出确认信息
        Response.Write("<CENTER>")
        Response.Write("<TABLE WIDTH=100% ALIGN=center BORDER=0 CELLSP
ACING=1 CELLPADDING=1>")
        Response.Write("<TR><TD ALIGN=RIGHT><B>打印消息送出:</B></TD>"
)
        Response.Write("<TD ALIGN=LEFT>" & strMessage & "</TD></TR>")

        Response.Write("<TR><TD ALIGN=RIGHT><B>网络打印机路径:</B></TD
>")
        Response.Write("<TD ALIGN=LEFT>" & strPrinterPath & "</TD></TR
>")
        Response.Write("<TR><TD ALIGN=RIGHT><B>登录帐号:</B></TD>")
        Response.Write("<TD ALIGN=LEFT>" & strUsername & "</TD></TR>")

        Response.Write("</TABLE>")
        Response.Write("</CENTER>")
     End If
     ' 取消打印连接
     objWSHNet.RemovePrinterConnection "LPT1:"
     Set objWSHNet  = Nothing
     Set objFS      = Nothing
     Set objPrinter = Nothing
  End If
  %>
  </BODY>
  </HTML>


最新更新
·数据库被挂马的ASP处理方法
·ASP快速获取远程文件大小的方
·用ASP屏蔽迅雷和旋风下载工具
·解决ASP中传送中文参数乱码的
·ASP+AJAX做类似Google的搜索
·ASP的一个非常棒的Debug类(
·ASP中常用的服务器检测源代码
·优化ASP中执行SQL效率的五个
·ASP种msxml3.dll 800c0005错
·挂QQ的ASP版本网页源代码
相关信息
画心
愚爱
偏爱
火苗
白狐
画沙
犯错
歌曲
传奇
稻香
小酒窝
狮子座
小情歌
全是爱
棉花糖
海豚音
我相信
甩葱歌
这叫爱
shero
走天涯
琉璃月
Nobody
我爱他
套马杆
爱是你我
最后一次
少女时代
灰色头像
断桥残雪
美了美了
狼的诱惑
我很快乐
星月神话
心痛2009
爱丫爱丫
半城烟沙
旗开得胜
郎的诱惑
爱情买卖
2010等你来
我叫小沈阳
i miss you
姑娘我爱你
我们都一样
其实很寂寞
我爱雨夜花
变心的玫瑰
犀利哥之歌
你是我的眼
你是我的OK绷
贝多芬的悲伤
哥只是个传说
丢了幸福的猪
找个人来爱我
要嫁就嫁灰太狼
如果这就是爱情
我们没有在一起
寂寞在唱什么歌
斯琴高丽的伤心
别在我离开之前离开
不是因为寂寞才想你
爱上你等于爱上了错
在心里从此永远有个你
一个人的寂寞两个人的错