2010-06-28 3 views
2

Je suis en train de jouer avec Tamir.SharpSsh et je voulais voir s'il était possible de l'utiliser pour implémenter un client console SSH entièrement en C#. Je ne veux pas dire quelque chose comme mastic où il fonctionne réellement dans sa propre interface graphique, mais quelque chose que vous pourriez exécuter directement à partir de la console cmd windows.VT100 Libellule d'émulation en C# avec SharpSSH

La bibliothèque est plutôt géniale, sauf qu'elle ne gère en aucun cas l'émulation de terminal. Donc, lorsque vous utilisez SshShell, vous pouvez faire une interaction de base, mais la sortie est souvent très laide et pleine de caractères aléatoires et vous ne pouvez pas réellement interagir avec des choses comme des scripts shell, etc

Pour autant que je sache SharpSSH redirige simplement l'IO à la console IO.

À quel point serait-il difficile de rediriger cet élément ailleurs et de gérer l'émulation de terminal? Aussi, existe-t-il déjà une bibliothèque d'émulation (C# et open source, de préférence) que je pourrais utiliser?

Editer: J'ai terminé sur SharpSSH, voir la réponse ci-dessous pour la solution finale que j'ai trouvée.

Répondre

2

J'ai depuis abandonné en essayant d'utiliser SharpSSH. C'est une bonne bibliothèque, mais manquait de fonctionnalité globale. J'utilise maintenant une bibliothèque appelée Granados qui est une implémentation SSH beaucoup plus étoffée. Il a un modèle d'événement intégré (contrairement à SharpSSH qui consiste principalement à se disputer avec Streams), ce qui rend l'utilisation très facile. En ce qui concerne la partie d'émulation de terminal ... Granados est en fait le noyau d'un autre projet open source appelé Poderosa. Poderosa est une application complète d'émulation de terminal qui peut se connecter à ssh, telnet et même à votre installation cygwin locale.

Je n'ai pas vraiment plongé dans son code d'émulation de terminal, mais il le fait très bien, donc je suis sûr que vous pouvez facilement sortir le code dont vous avez besoin.

1

Je cherche la même chose. Il y a une bibliothèque here qui coûte 700 $. Trouvé un autre sur codeproject qui semble de mauvaise qualité, mais pourrait être un bon début. Et il y a une implémentation incomplète ici sur stackoverflow. Toujours à la recherche ..

Questions connexes