【发布时间】:2012-04-13 14:28:41
【问题描述】:
我正在 xp 上编写一个 telnet 代理。现在我可以远程登录到系统的远程登录服务器并打印它的返回值发送回我的程序。
我发现了一个非常令人费解的现象。当我第一次 telnet 到服务器时,它会要求我登录。我输入 "tamlok",我可以看到它向我发送回 "116,97,109,108,111,107,10,13",这是 "tamlok"(10 and 13 means '\n' and '\r') 的 ascii 值。
但是在我登录后,我再次输入"tamlok"。它发回给我"27,91,56,59,51,52,72,116,0,97,0,108,0,111,0,107,0,27,91,57,59,49,72"。
我建议它返回 unicode,以便 "116" 变成 "116,0" 等等。但我无法理解"27,91,56,59,51,52,72" 和"27,91,57,59,49,72" 的顺序。我认为这可能是一个特殊功能的序列,就像{0x1B, 0x5B, 0x48, 0x1B, 0x5B, 0x4A} 将清除控制台一样。
那么,如何解释呢? 欢迎任何帮助!
【问题讨论】:
-
它看起来很像终端控制代码。我建议您查找 VT100 控制代码,例如找到 here 的代码。
标签: network-programming windows-xp network-protocols