用ASP进行网络打印功能
|
admin
2010年7月8日 1:3
本文热度 5604
|
<%@ 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")
%>
<%
if strsubmit = "" then
%>
注意的是:
由于这是演示,其中有关nt的帐号和密码都是使用了不加密的手段在asp中传递的
真正的运用中应该对该登录过程进行安全处理。
当以上信息被提交后,就可以按照下面的代码进行打印了。
<%
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 network object. the network object will
give us the methods we need to open a printer connection, and the filesystemobject 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, strusername, 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.description)
err.clear
else
' 操作成功,输出确认信息
response.write("
")
response.write("")
response.write("打印消息送出: | ")
response.write("" & strmessage & " |
")
response.write("网络打印机路径: | ")
response.write("" & strprinterpath & " |
")
response.write("登录帐号: | ")
response.write("" & strusername & " |
")
response.write("
")
response.write("")
end if
' 取消打印连接
objwshnet.removeprinterconnection "lpt1:"
set objwshnet = nothing
set objfs = nothing
set objprinter = nothing
end if
%>
该文章在 2010/7/8 1:03:23 编辑过