批处理调用telnet命令
VB如何执行Telnet命令(不出现命令提示符窗口)
不希望用生成批处理BAT后用Shell去调用,然后隐藏提示符窗口的做法!
Telnet进去后,还得执行3个命令,用VBS脚本我会做,但是运行了还是会出现提示符窗口
我希望做出来得结果是:能在VB的TEXT文本框里看到执行后返回的数据,全部过程不需要调用到CMD提示符窗口
Telnet命令如下:
-----------------------------------------------------
telnetmember80
GET/dyndns/update system=dyndns&hostname=myD&wildcard=OFF&offline=NOHTTP/1.1
Host:member
Authorization:BasicbXlEQjoxMjM0NTY=
------------------------------------------------------
VBS脚本是这样的:
--------------------------------------------------
SetWshShell=CreateObject("WScript.Shell")
WshShell.Run"telnetmember80"
WScript.Sleep(1200)
WshShell.SendKeys"GET/dyndns/update system=dyndns&hostname=myD&wildcard=OFF&offline=NOHTTP/1.1{enter}"
WScript.Sleep(500)
WshShell.SendKeys"Host:member{enter}"
WScript.Sleep(500)
WshShell.SendKeys"Authorization:BasicbXlEQjoxMjM0NTY={enter}"
WScript.Sleep(500)
WshShell.SendKeys"{enter}"
---------------------------------------------------
希望高手指教!!!!!
一个text1控件和一个winsock1控件
大致代码就这样子
OptionExplicit
PrivateDeclareSubSleepLib"kernel32"(ByValdwMillisecondsAsLong)
PrivateSubForm_Load()
Winsock1.Protocol=sckTCPProtocol
Winsock1.Connect"member",80
EndSub
PrivateSubWinsock1_Connect()
DimStrAsString
Str="GET/dyndns/update system=dyndns&hostname=myD&wildcard=OFF&offline=NOHTTP/1.1"&vbCrLf
Str=Str&"Host:member"&vbCrLf
Str=Str&"Authorization:BasicbXlEQjoxMjM0NTY="&vbCrLf
Winsock1.SendDataStr
EndSub
PrivateSubWinsock1_DataArrival(ByValbytesTotalAsLong)
DimDataAsString
Winsock1.GetDataData
Text1.Text=Data
EndSub
可以用winsock控件直接做
telnet协议你可以用sanddata一行一行给他发指令的,用vbcrlf加在每行结尾就行了
能否用API,别用winsock控件呢?
带多个控件感觉麻烦,HOHO~~~~
用API可以实现啊。批处理调用telnet命令不过只实现登录,一点用也没有,而实现一个完整的Telnet客户端,工作量又太大,所以建议楼主不妨自己GOOGLE一下,慢慢地实现一个。
2楼的代码也不正确,没通过
报错吗
我这里可以运行的啊.
网上有用api实现winsock功能的类,代码很多啊,关键分清楚要做的是什么,陷在那堆API代码里是不是值得
没报错,但是运行后没产生连接,TEXT里也没接收到返回的数据
路过,顶一下
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-44840-1.html
升级后信号只有一格