如何用c++,做出一个自动telnet 的程序?``跪求
发布网友
发布时间:2023-01-01 09:36
我来回答
共1个回答
热心网友
时间:2023-10-05 11:46
一般来说ftp做batch处理事务时非常常见的事情。那么如果Batch
telnet,让我们的管理工作更加的轻松呢?
一般来说两种方法:
1、VBS法(Windows
Script
Host)
2、自动终端法(一些可以配置自动telnet的终端)
在这里我们讨论第一种方法:VBS法。由于Windows
Script
Host是系统自带的,我们不需要安装地方放软件就可以搞定。所以它一般是解决问题的首选。
首先,我们建立一个名字叫做tel.vbs的脚本,这里用telnet
到cisco路由器上作为一个例子,相关内容大家可以修改。
'建立Shell对象
set
sh=WScript.CreateObject("WScript.Shell")
WScript.Sleep
1000
'向telnet发送我们平时录入的命令
sh.SendKeys
"open
192.168.1.1"
WScript.Sleep
1000
sh.SendKeys
"{ENTER}"
WScript.Sleep
1000
sh.SendKeys
"password{ENTER}"
WScript.Sleep
1000
sh.SendKeys
"en{ENTER}"
WScript.Sleep
1000
sh.SendKeys
"passord{ENTER}"
WScript.Sleep
1000
'运行cisco的show
run命令
sh.SendKeys
"show
run{ENTER}"
然后,建立一个batch_tel.bat的批处理文件:
rem
启动telnet
start
telnet.exe
rem
batch
telnet
cscript
//nologo
tel.vbs
最后,我们只需要运行batch_tel.bat就可以轻松搞定telnet的工作了。
对于SendKeys这个命令可以send什么,我们可以看下面的列表:
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}
F2
{F2}
F3
{F3}
F4
{F4}
F5
{F5}
F6
{F6}
F7
{F7}
F8
{F8}
F9
{F9}
F10
{F10}
F11
{F11}
F12
{F12}
F13
{F13}
F14
{F14}
F15
{F15}
F16
{F16}
SHIFT
+
CTRL
^
ALT
%