.net 如何从silverlight应用程序运行shell脚本?

.net 如何从silverlight应用程序运行shell脚本?,.net,linux,silverlight,shell,.net,Linux,Silverlight,Shell,我正在开发silverlight应用程序(c#),需要运行linux服务器中的shell脚本 有人能帮我吗 也许在浏览器外运行模式是您要寻找的答案 您可以从OOB调用COM,在OOB中,Silverlight程序集配置为使用提升的权限运行完浏览器。从那里你几乎可以做任何事情 例如: if (Application.Current.HasElevatedPermissions && ComAutomationFactory.IsAvailable) { dynamic cm

我正在开发silverlight应用程序(c#),需要运行linux服务器中的shell脚本


有人能帮我吗

也许在
浏览器外运行
模式是您要寻找的答案

您可以从OOB调用COM,在OOB中,Silverlight程序集配置为使用提升的权限运行完浏览器。从那里你几乎可以做任何事情

例如:

if (Application.Current.HasElevatedPermissions && ComAutomationFactory.IsAvailable)
{
    dynamic cmd = ComAutomationFactory.CreateObject("WScript.Shell");
    cmd.Run(@"c:\windows\notepad.exe", 1, true);
}

还请注意,这只在Windows中起作用,因此检查ComAutomationFactory.IsAvailable是正确的。您可以使用cgi(perl、ruby等)或对服务器的简单http请求。比如:
http://your-server-address/execute.php
并使用php(或somthing-else)命令或ruby,或您希望处理脚本输出并将其发送给用户的内容


示例:
应用程序(ironruby):

get_users_dirs.php:

获取用户目录



或者您可以像开发一个

一样开发自己的ssh客户端,我认为您想要的是不可能的。但是,除非您提供更多关于您想要实现什么的信息(即此shell脚本的作用)我不认为任何人能够提出任何合理的建议。你可以使用一个支持cgi的web服务器,并根据你实际做的事情以cgi的形式运行脚本。我正在尝试执行一个Shell脚本,该脚本将在linux服务器机上运行一个程序。这个程序是用Saturne代码开发的。运行的脚本runcase将编译SRC目录中的所有文件,并将它们与现有库链接。我正在尝试执行一个Shell脚本,它将从客户端在linux服务器机器上运行一个程序!
host = "your_server_address"
wclient = System::Net::WebClient.new
wclient.download_string_completed{|wc, e|
    # do something with e.Result
}
wclient_data.download_string_async(System::Uri.new("#{host}/get_users_dirs.php")))
print shell_exec("bash ./get_users_dirs.sh");
ls /home