它实际上不是一个批处理,而是一个vbscript,它使用sleep,所以在高延迟的情况下,它很容易失败,但我使用以下脚本来测试通过telnet发送电子邮件
smtpadr = InputBox("SMTP server address", "","192.168.1.35" , 100, 200)
localname = InputBox("SMTP", "","mx01.domain.com" , 100, 200)
emailadr = InputBox("Email address", "","jonbdk@domain.com" , 100, 200)
if smtpadr & "" = "" OR localname & "" = "" OR emailadr & "" = "" then
wscript.quit
end if
set Shell=CreateObject("WScript.Shell")
Shell.run "cmd /K"
wscript.sleep(1000)
sendkeys ("telnet "&smtpadr&" 25{ENTER}")
wscript.sleep(4000)
'sendkeys ("quit{ENTER}")
sendkeys ("HELO "&localname&"{ENTER}")
wscript.sleep(2000)
sendkeys ("MAIL FROM:{ENTER}")
wscript.sleep(1000)
sendkeys ("RCPT TO:{ENTER}")
wscript.sleep(1000)
sendkeys ("DATA{ENTER}")
wscript.sleep(1000)
sendkeys ("FROM:{ENTER}")
wscript.sleep(100)
sendkeys ("TO:{ENTER}")
wscript.sleep(100)
sendkeys ("Date:16-05-2010{ENTER}")
wscript.sleep(100)
sendkeys ("{ENTER}")
wscript.sleep(100)
sendkeys ("Hello World{ENTER}")
wscript.sleep(100)
sendkeys (".{ENTER}")
function sendkeys (strkeys)
on error resume next
' BACKSPACE {BACKSPACE}, {BS}, or {BKSP}
' BREAK {BREAK}
' CAPS LOCK {CAPSLOCK}
' DEL or DELETE {DELETE} or {DEL}
' DOWN ARROW {DOWN}
' END {END}
' ENTER {ENTER} or ~
' ESC {ESC}
' HELP {HELP}
' HOME {HOME}
' INS or INSERT {INSERT} or {INS}
' LEFT ARROW {LEFT}
' NUM LOCK {NUMLOCK}
' PAGE DOWN {PGDN}
' PAGE UP {PGUP}
' PRINT SCREEN {PRTSC}
' RIGHT ARROW {RIGHT}
' SCROLL LOCK {SCROLLLOCK}
' TAB {TAB}
' UP ARROW {UP}
' F1 {F1}
shell.sendkeys(strKeys)
if err.number <> 0 then debug "Failed to sendkeys """ & strkeys &""""
on error goto 0
end function