从同一网络中的另一台计算机远程控制WPF应用程序

时间:2017-09-02 10:49:57

标签: c# wpf

所以我正在使用WPF构建一个接口,它将使用PsExec命令在同一网络中的不同机器上启动WPF应用程序。

示例:

private static void _remotelyOpenEXE(string psEpath, string ipv4LocalAdd, string userName, string passWord, string path)
{
  ProcessStartInfo psi = new ProcessStartInfo(psEpath, string.Format("\\\\{0} -i 1 -d -u {1} -p {2} {3}", ipv4LocalAdd, userName, passWord, path));

  psi.UseShellExecute = false;
  psi.CreateNoWindow = false;
  Process.Start(psi);            
}

现在这是最简单的部分,我想要做的是与每个加载的应用程序进行交互,并专门控制每台机器中的每个特定WPF应用程序,例如单击按钮,检索信息,例如存在的列表在那个GUI中。

我可以使用以下示例代码轻松监控进程:

Process[] proc = Process.GetProcesses(GetMachineNameFromIPAddress(ipv4LocalAdd));
foreach (var p in proc)
{
    //can list each process now
}

private static string GetMachineNameFromIPAddress(string ipv4LocalAdd)
{
    string machineName = string.Empty;
    try
    {
       IPHostEntry hostEntry = Dns.GetHostEntry(ipv4LocalAdd);

       machineName = hostEntry.HostName;
    }
    catch (Exception ex)
    {
       Console.WriteLine(ex.Message);
       return string.Empty;
    }
    return machineName;
}

现在,我该如何控制每个应用程序?

0 个答案:

没有答案