我在QT C(带有侦听套接字的服务器)中开发了一个应用程序,等待客户端连接和发送命令 .
它是在Windows XP Professional版本2002 SP3英文版中开发和测试的,并在Windows 7 64位中使用telnet客户端使用保留字SEND从命令提示符向服务器发送字符串而没有问题 .
实际上我正在从另一个Windows XP专业版2002 SP3西班牙语版本的机器上测试这个应用程序,我遇到了发送字符串的问题 .
Telnet客户端正确连接,从服务器接收数据,但当我移动到命令提示符并尝试发送我收到的字符串并出错 .
Microsoft Telnet>发送MYSTRING
命令无效 . 输入?/求助
微软Telnet>?
命令可以缩写 . 支持的命令是:
c - 关闭当前连接
d - 显示显示操作参数
o - 打开主机名[port]连接到主机名(默认端口23) .
q - 退出telnet
set - set set options(为列表键入'set?')
sen - 将发送字符串发送到服务器
st - 状态打印状态信息
你 - 取消设置未设置选项(为列表键入'unset?')
?/ h - 帮助打印帮助信息
Microsoft Telnet> d
逃脱角色是'CTRL}'
将auth(NTLM身份验证)
本地回声
新行模式 - 使返回键发送CR和LF
当前模式:控制台
将术语类型
首选术语类型是ANSI
注意:上面的转录被翻译,我用西班牙语得到这个消息
我需要知道这个问题,telnet没有识别保留字是配置还是安全问题 .
Windows防火墙已停用 .
EDIT1:
要清除Telnet客户端问题的情况:
我开发了Windows XP 2002 SP3英文版的应用程序 . 此应用程序是在端口6000中侦听的网络中的服务器 . 等待客户端通过LAN连接(例如通过Telnet客户端) .
运行我的应用程序的电脑有IP1和它的工作 .
从具有相同操作系统的PC2开始,我使用> telnet IP1 6000进行连接,然后连接并从我的应用程序(服务器)接收数据 . 然后我按'ctrl}'进入Telnet提示Microsoft Telnet>发送AnyString AnyString已经发送到服务器 . 我的应用程序正确接收数据,处理它并正常工作 .
从使用W7和Ubuntu虚拟机的PC3,与PC2相同的程序,它工作正常 .
从PC4 os Windows XP SP3 2002西班牙语i连接使用> telnet IP1 6000和我连接并从我的应用程序(服务器)接收数据后 . 然后我按'ctrl}'进入Telnet提示Microsoft Telnet>发送AnyString无效命令 . 输入?/求助
这就是为什么我认为XP上的Telnet客户端可以“配置”?
1 回答
要使用telnet客户端通过TCP / IP发送文本消息,您只需要使用地址调用telnet(如果不是默认值23则使用端口),即:
该命令名为 sen ,而不是 send . 也许发送也是仙,但在帮助中只有仙才能更好地坚持下去 .
您可以通过键入可能是'^]'的转义字符然后键入
sen
来转到telnet模式:Microsoft telnet客户端sen命令终止带有null的字符串:当您键入5个字符
p i o t r
时,它会以00字节('\0')终止这5个字节,因此发送了6个字节:如果Microsoft Telnet出现问题,您可以随时安装putty或编写一个简单的telnet客户端: