2010-11-01 85 views
3

我正在创建一个GUI来与Citrix XEN服务器进行交互。我不知道如何在我的应用程序中执行我的XEN服务器上的寡妇系统中的命令。 我想使用SSH,但我不知道如何。有没有人有如何做到这一点的例子?如何在用户按下按钮时建立SSH隧道?我希望能够运行命令xe vm-list,然后将输出显示在标签中。这只是开始我的下一个将创建一个虚拟机和名称是用户想要的,但现在我只需要弄清楚如何执行XEN服务器上的命令。如何从C#应用程序创建SSH连接?

+0

参见http://stackoverflow.com/questions/11169396/c-sharp- send-a-simple-ssh-command – MarkJ 2014-04-10 22:25:29

回答

1

发现自己的SSH组件将允许你这样做更有意义的事情,但在基础层面,你可以做这样的事情:

public void ExecuteExternalCommand(string command) 
{ 
try 
{ 
    // process start info 
    System.Diagnostics.ProcessStartInfo processStartInfo = new System.Diagnostics.ProcessStartInfo("cmd", "/c " + command); 
    processStartInfo.RedirectStandardOutput = true; 
    processStartInfo.UseShellExecute = false; 
    processStartInfo.CreateNoWindow = true; // Don't show console 

    // create the process 
    System.Diagnostics.Process process = new System.Diagnostics.Process(); 
    process.StartInfo = processStartInfo; 
    process.Start(); 

    string output = process.StandardOutput.ReadToEnd(); 
    Console.WriteLine(output); 
} 
catch (Exception exception) 
{ 
    //TODO: something Meaninful 
} 
} 

这将让你通过CMD运行任意的外部可执行文件。 exe界面,然后对其进行响应。

这里的一些链接:

2

我已经使用SharpSSH获得了巨大成功。

这可以从http://www.tamirgal.com/blog/page/SharpSSH.aspx下载。

+0

你有一个如何设置的例子吗? – user770022 2010-11-01 16:28:32

+0

sourceforge的源文件有一个'Examples \ sharpssh_samples'文件夹,里面包含了很多进入很多细节的示例。 – 2010-11-01 16:30:36

+0

这不是我想要的。我希望它对用户都是隐藏的。 – user770022 2010-11-01 16:46:00

相关问题