【问题标题】:How can i execute a process on remote to another pc in c#如何在 C# 中远程执行另一台 PC 上的进程
【发布时间】:2012-05-30 07:56:36
【问题描述】:

我想在远程电脑上调用一个进程。 以下代码适用于本地,但我无法使其适用于远程电脑

Process proc1 = new Process();

if (File.Exists("C:\\myApp.exe"))
{
    proc1.StartInfo.FileName = "C:\\myApp.exe";
    proc1.Start();
    proc1.Close();

}

【问题讨论】:

标签: c# process local


【解决方案1】:

这里有人问过类似的问题:

How to execute a command in a remote computer?

答案之一是使用 sysinternals psexec

另一个答案是使用WMI

【讨论】:

【解决方案2】:

我同意 Seth Flowers 的观​​点 - psexec 是一个很好的方法。

--

既然您将问题标记为 C#,我将添加:

如果您之所以问,是因为您正在创建一个主机在子计算机上生成作业的分布式系统,那么您可以创建一个 C# 主机应用程序和一个 C# 客户端应用程序,并使用 Windows Communication Foundation (WCF. ) 这将为您提供一个服务类来与主机上的其他机器进行通信。一旦你可以在机器之间进行通信,你可以简单地让主机告诉孩子“运行这个应用程序”,你可以在孩子端使用你的进程代码。

这是一篇很好的文章,解释了这个概念,我以前用过(注,如果你使用这个,请以管理员身份运行 VS,否则 metadataBehavior 对象会抛出异常): http://www.codeproject.com/Articles/16765/WCF-Windows-Communication-Foundation-Example

【讨论】:

  • 不,我问的是因为我创建了一个可以在我的电脑(本地)上运行的应用程序,这个应用程序将在我网络的其他电脑上启动应用程序,我真正想做的是:将要在我的电脑上的应用程序,我想在我的网络上的其他电脑上安排任务
猜你喜欢
  • 2013-08-31
  • 2019-07-28
  • 2011-01-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-09
  • 2010-12-10
相关资源
最近更新 更多