代码之家  ›  专栏  ›  技术社区  ›  Serkan Hekimoglu

远程进程执行

  •  2
  • Serkan Hekimoglu  · 技术社区  · 14 年前

    我的场景是用C#.Net连接到远程计算机,并列出该远程计算机的所有进程。我可以终止一个进程,或者在远程启动一个新进程。问题是,当我在remote上执行一个新进程时,我可以在taskmanager上看到这个进程,但在windows屏幕上看不到。知道为什么它不出现在windows上,而是出现在任务管理器/进程上吗。这是我的执行代码

    private void btnStartNew_Click(object sender, EventArgs e)
        {
            object[] arrParams = { txtNewProcess.Text.Trim()};
            try
            {
                manageClass = new ManagementClass(myScope, new ManagementPath("Win32_Process"), new ObjectGetOptions());
                manageClass.InvokeMethod("Create", arrParams);
                btnConnect_Click(sender, e);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
    

    我的工作范围是:

    myScope = new ManagementScope(@"\ROOT\CIMV2", connOptions);
    
    3 回复  |  直到 13 年前
        1
  •  2
  •   emrahe    14 年前

        2
  •  0
  •   Radoslav Hristov    14 年前

        3
  •  0
  •   Dennis    12 年前

    1. 在目标机器上,运行 dcomcnfg
    2. 展开 Component Services\Computers\My Computer\DCOM Config
    3. 8BC3F05E-D86B-11D0-A075-00C04FB68820 (您可以在“详细信息”视图中看到这一点)。
    4. 编辑属性,然后在“权限”选项卡下添加您尝试登录的用户名。
    5. 您可能需要重新启动服务才能使更改生效。