C#中的SSH客户端会话

时间:2015-04-09 19:46:15

标签: c# ssh

我正在尝试使用SshNet(Renci)在我的C#应用​​程序中创建一个ssh客户端会话。我似乎无法理解如何让它工作。本质上,我可以获得与服务器的连接,但是当我尝试提交命令时,我没有从服务器返回任何内容。我正在使用SshClient和SshShell来执行通信。我做错了什么?

ssh.Connect();

var input = new MemoryStream();
var sr = new StreamWriter(input);
var output = Console.OpenStandardOutput();

IDictionary<Renci.SshNet.Common.TerminalModes, uint> termkvp = new Dictionary<Renci.SshNet.Common.TerminalModes, uint>();
termkvp.Add(Renci.SshNet.Common.TerminalModes.ECHO, 53);

var shell = ssh.CreateShell(input, output, output, "xterm", 80, 24, 800, 600, termkvp, 1024);
shell.Stopped += delegate
{
    Console.WriteLine("\nDisconnected...");
};

shell.Start();

while (true)
{
    string command = Console.ReadLine();

    if (command == "exit") break;

    sr.WriteLine(command);
    sr.Flush();
    Thread.Sleep(1000 * 1);
}

shell.Stop();

0 个答案:

没有答案