【问题标题】:About the return values of the telnet server on windows xp关于windows xp上telnet服务器的返回值
【发布时间】: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


【解决方案1】:

感谢 Joachim Pileborg。现在很明显它是终端控制代码。 An example。 所以 "27,91,56,59,51,52,72" 是 "[Esc][8;34H" 适合模式: 光标首页 [{ROW};{COLUMN}H 设置后续文本开始的光标位置。如果没有提供行/列参数(即[H),光标将移动到屏幕左上角的起始位置。 27,91,57,59,49,72" 也是如此。

【讨论】:

    猜你喜欢
    • 2012-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-06
    • 2010-09-26
    • 2014-04-09
    • 2023-03-19
    • 2010-12-03
    相关资源
    最近更新 更多