【问题标题】:Run cmd with parametrs from c# code使用 c# 代码中的参数运行 cmd
【发布时间】:2013-11-20 13:35:02
【问题描述】:

假设我的表单上有按钮(我使用 c#)

private void yesButton_Click(object sender, EventArgs e)
{
}

我需要怎样写以及写什么,以便调用我的 ruby​​ cmd 文件?

例如在 cmd 中我写:

cd c:\ruby\ 
ruby 1.rb 
(here i need to pass some var's) 
root 
123

如何在我的 c# .net 应用程序中调用它?我还需要在某些表单组件上查看 cmd 输出(哪个最好)?

我也需要在“多任务”中调用它,所以调用这个 cmd 让我们说 10 次在 ~ 准时...

【问题讨论】:

  • 如何从命令行调用它?
  • @MichaelPerrenoud 我需要启动 cmd 并在表单应用程序中传递值,然后在表单中使用 cmd
  • 您的 ruby​​ 脚本是否从标准输入读取?
  • @JohnKällén 你是什么意思?是的,它是读取 cmd 输入

标签: c# .net ruby cmd


【解决方案1】:

好的,所以你的问题仍然很模糊,但你可以这样做:

var pathToRbFile = @"C:\Ruby193\script\123.rb";
var arguments = string.Empty; // I don't know what the arguments would be

var info = new ProcessStartInfo(pathToRbFile, arguments);
Process.Start(info);

【讨论】:

  • 在这种情况下,.rb 文件不是参数,第一个参数是 ruby​​ 可执行文件的路径吗?否则这应该工作。
  • @krizz,.rb 文件通常应该已经可以被 shell 执行。 Process.Start 利用正常的 shell 执行。
  • @ValdisAzamaris,我不知道所有这些信息,因为我对红宝石一无所知。但正如我在回答中所说,第一个参数是.rb 文件的完全限定路径,然后第二个参数是string 的参数。那条路径是什么,这些论点是什么,这是你必须解决的问题。
  • 忘记ruby,想象一下我在“C:\\Ruby193\\scripts”中有rb文件,我必须在那里执行命令ruby 123.rb,如何编写代码呢?还提供完整的代码,创建类实例等
  • @ValdisAzamaris,我已经更新了我的问题,但这就是所有代码。仅此而已。
猜你喜欢
  • 2018-12-16
  • 1970-01-01
  • 1970-01-01
  • 2013-01-13
  • 1970-01-01
  • 2018-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多