使用到的技术:
ASP,WSH,VBScript
Usando ASPPrint.asp:
<%@Idioma=VBScript%>
<%
Opção Explícita
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("Enviar")
%>
<HTML>
<CABEÇA>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<CORPO>
<%
Se strSubmit = "" Então
%>
注意的是:
由于我是演示起见,其中有关NT的帐号和密码都是使用了不加密的手段在ASP中传递的真正的运用中应该对该登录过程进行安全处理。
<FORM action="ASPPrint.asp" método=POST id=form name=form>
<LARGURA DA TABELA=100% ALIGN=centro BORDER=0 CELLSPACING=1 CELLPADDING=1>
<TR>
<TD ALIGN=right NOWRAP>网络打印机路径:</TD>
<TD ALIGN=left NOWRAP><INPUT type="text" id=printerpath name=printerpath value="\< Domínio >< Impressora >"></TD>
</TR>
<TR>
<TD ALIGN=right NOWRAP>登录帐号:</TD>
<TD ALIGN=esquerda NOWRAP><INPUT type="text" id=nome de usuário nome=nome de usuário
value="<% = strUsername %>"></TD>
</TR>
<TR>
<TD ALIGN=right NOWRAP>登录口令:</TD>
<TD ALIGN=esquerda NOWRAP><INPUT type="senha" id=nome da senha=senha></TD>
</TR>
<TR>
<TD ALIGN=right NOWRAP>请输入你想打印的文字:</TD>
<TD ALIGN=esquerda NOWRAP><TEXTAREA linhas=2 cols=20 id=nome da mensagem=mensagem></TEXTAREA></TD>
</TR>
<TR>
<TD ALIGN=direita NOWRAP> </TD>
<TD ALIGN=left NOWRAP><INPUT type="submit" value="Submit" id=submit name=submit></TD>
</TR>
</TABELA>
</FORM>
当以上信息被提交后,就可以按照下面的代码进行打印了。
<%
Outro
' 从formulário中取得响应信息。
strPrinterPath = Request.Form("caminho da impressora")
strUsername = Request.Form("nome de usuário")
strSenha = Request.Form("senha")
strMessage = Request.Form("message")
Agora usaremos o objeto VBScript FileSystemObject e o objeto WSH Net work. O objeto Rede será
forneça os métodos necessários para abrir uma conexão de impressora, e o FileSystemObject nos permitirá transmitir nosso
saída para a impressora. Criamos esses objetos no código a seguir
exemplo:
' 使用WSH连接网络打印机
Definir objWSHNet = CreateObject("WScript.Network")
objWSHNet.AddPrinterConnection "LPT1", strPrinterPath, False, strUsername, strPassword
'使用文件系统对象将打印设备作为一个文件使用
Definir objFS = CreateObject("Scripting.FileSystemObject")
Definir objPrinter = objFS.CreateTextFile("LPT1:", True)
' 给打印设备送出文本
objPrinter.Write(strMessage)
'关闭打印设备对象并进行错误陷阱处理
Em caso de erro, retomar o próximo
objPrinter.Fechar
' 如果发生错误,关闭打印连接,并输出错误信息
Se errar então
Response.Write ("Erro # " & CStr (Err.Number) & " " & Err.Description)
Err.Limpar
Outro
' 操作成功,输出确认信息
Response.Write("<CENTRO>")
Response.Write("<TABLE WIDTH=100% ALIGN=center BORDER=0 CELLSPACING=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>" & strNome de usuário & "</TD></TR>")
Resposta.Write("</TABLE>")
Resposta.Write("</CENTER>")
Terminar se
' 取消打印连接
objWSHNet.RemovePrinterConnection "LPT1:"
Definir objWSHNet = Nada
Definir objFS = Nada
Definir objPrinter = Nada
Terminar se
%>
</BODY>
</HTML>