2012-04-13 6 views
0

私はxpにtelnetプロキシを作成しています。これで、システムのtelnetサーバーにtelnetで接続し、戻り値を自分の手順に戻して印刷できます。Windows上のtelnetサーバーの戻り値についてxp

非常に困惑している現象が見つかりました。最初にサーバにtelnetすると、ログインするように求められます。"tamlok"と入力すると、"tamlok"(10 and 13 means '\n' and '\r')のASCII値である"116,97,109,108,111,107,10,13"が返ってきているのがわかります。

しかし、ログインした後にもう一度"tamlok"と入力します。それは私に"27,91,56,59,51,52,72,116,0,97,0,108,0,111,0,107,0,27,91,57,59,49,72"を送り返します。

"116""116,0"となるようにユニコードを返すことをお勧めします。しかし、私はシーケンス"27,91,56,59,51,52,72""27,91,57,59,49,72"を理解できません。私はおそらく{0x1B, 0x5B, 0x48, 0x1B, 0x5B, 0x4A}のような特別な機能のためのシーケンスは、コンソールをクリアすると思う。

これをどのように解釈するのですか? 助けを歓迎します!

+0

それは最終的に端末の制御コードのように見えますが、私はVT100の制御コードを調べることをお勧めします[ここ](http:// www.termsys.demon.co.uk/vtansi.htm)。 –

答えて

0

Joachim Pileborgのおかげです。それは終端制御コードであることは明らかです。 An example。 カーソルホーム[{ROW}; {COLUMN} H カーソル位置を次のように設定します。 "27,91,56,59,51,52,72"は、パターンに適合する[[Esc] [8; 34H]その後のテキストが始まります。行/列のパラメータが指定されていない場合(つまり、[H]の場合、カーソルは画面の左上のホームポジションに移動します) それで27,91,57,59,49,72 "。

関連する問題