2

私は Tamir.SharpSsh をいじっていて、それを使用してコンソール SSH クライアントを C# で完全に実装できるかどうかを確認したかったのです。独自の GUI で実際に実行されているパテのようなものではなく、Windows コマンド コンソールから直接実行できるものを意味します。

このライブラリは、端末エミュレーションをまったく処理しないことを除いて、非常に優れています。そのため、SshShell を使用すると、いくつかの基本的な対話を行うことができますが、出力は非常に見苦しく、ランダムな文字でいっぱいになることが多く、シェル スクリプトなどと実際に対話することはできません。

私が知る限り、SharpSSH は単に IO をコンソール IO にリダイレクトします。

これを別の場所にリダイレクトして端末エミュレーションを処理するのはどれほど難しいでしょうか? また、使用できるエミュレーション ライブラリ (できれば C# とオープン ソース) は既にありますか?

編集: SharpSSHをあきらめました。私が思いついた最終的な解決策については、以下の回答を参照してください。

4

2 に答える 2

3

それ以来、私はSharpSSHを使用することを断念しました。これは優れたライブラリですが、全体的な機能があまりにも不足していました。私は現在、SSH 実装をより具体化したGranadosというライブラリを使用しています。イベントモデルが組み込まれており(主にストリームとのラングリングを伴う SharpSSH とは異なり)、使用が非常に簡単になります。

ターミナル エミュレーションの部分については... Granados は、実際にはPoderosaと呼ばれる別のオープン ソース プロジェクトのコアです。

Poderosa は、ssh、telnet、さらにはローカルの cygwin インストールに接続できる完全なターミナル エミュレーター アプリケーションです。

端末エミュレーション コードについてはまったく詳しく説明していませんが、非常にうまく機能することは間違いないので、必要なコードを簡単に引き出すことができると確信しています。

于 2010-07-15T17:32:12.960 に答える
1

私は同じものを探しています。ここには 700 ドルの図書館があります。見掛け倒しに見えるが、良いスタートになるかもしれないcodeprojectで別のものを見つけました。そして、ここのstackoverflowには不完全な実装があります。まだ探している..

于 2010-07-15T16:55:02.337 に答える