2010-06-28 3 views
2

나는 Tamir.SharpSsh를 사용하고 있는데 C#으로 콘솔 SSH 클라이언트를 완벽하게 구현할 수 있는지 알고 싶다. 나는 실제로 자신의 GUI에서 실행중인 putty와 같은 것을 의미하지는 않지만, Windows cmd console에서 직접 실행할 수있는 무언가를 의미합니다.VT100 에뮬레이션 C#에서 SharpSSH로

라이브러리는 어떤 식 으로든 터미널 에뮬레이션을 처리하지 않는다는 점을 제외하면 꽤 훌륭합니다. 따라서 SshShell을 사용할 때 기본적인 상호 작용을 할 수는 있지만 출력은 종종 매우 못 생기고 임의의 문자로 가득 차며 쉘 스크립트 등과 같은 것들과 실제로 상호 작용할 수 없습니다.

나는 SharpSSH가 단순히 리다이렉트한다고 말할 수 있습니다. IO는 콘솔 IO에 연결됩니다.

다른 곳으로 리디렉션하고 터미널 에뮬레이션을 처리하는 것이 얼마나 어려운가요? 또한 이미 사용할 수있는 에뮬레이션 라이브러리 (C# 및 오픈 소스, 가능하면)가 있습니까?

편집 : SharpSSH에 대해 알아 보았습니다.

답변

2

나는 실제로 SharpSSH를 사용하려고 시도하면서 포기했다. 좋은 라이브러리이지만 전반적인 기능이 부족했습니다. 지금은 Granados이라는 라이브러리를 사용하고 있습니다.이 라이브러리는 SSH 구현보다 훨씬 더 유연합니다. 그것은 이벤트 모델을 내장하고 있으며 (SharpSSH와는 달리 주로 Streams와 논쟁하는 것과는 달리) 사용법이 매우 쉽습니다.

터미널 에뮬레이션 부분은 ... 실제로 Granados는 Poderosa이라는 다른 오픈 소스 프로젝트의 핵심입니다.

Poderosa는 ssh, telnet 및 심지어 로컬 cygwin 설치에 연결할 수있는 완전한 터미널 에뮬레이터 응용 프로그램입니다.

나는 터미널 에뮬레이션 코드를 전혀 보지 못했지만, 확실히 확실히 잘 돌아 간다. 그래서 필요한 코드를 쉽게 꺼낼 수있을 것이다.

1

나는 똑같은 것을 찾고있다. here에는 $ 700의 라이브러리가 있습니다. 이상한 것처럼 보이지만 좋은 시작일 수도있는 codeproject에 또 하나를 찾아 냈습니다. 그리고 여기에 불완전한 구현이 stackoverflow에 있습니다. 아직도 검색 중이 야.