流程不接受参数?

时间:2017-12-16 05:47:44

标签: c#

我想以username,password和project_name作为参数启动流程。如果流程已经运行,那么不要重复启动相同的流程。

如果我不使用代码来避免重复相同的流程执行,则该过程接受所有参数。 以下是我的代码:

public SyncConnector(string username, string password, string projectname)
    {
        string thisprocessname = Process.GetCurrentProcess().ProcessName;
        if (Process.GetProcesses().Count(p => p.ProcessName == thisprocessname) > 1)
        {
            _proc = Process.Start("doors.exe", "-u " + username + " -P " + password + " -project" + projectname);
        }

        while (_proc != null && !_proc.WaitForInputIdle(1000 * 60))
        {
        }
}

此过程在创建Object时开始。意味着它在构造函数中调用。 如何将参数成功传递给进程??? 感谢高级......!

1 个答案:

答案 0 :(得分:1)

如果进程已经运行,则无法将“参数”传递给它。它需要能够在运行时接收信息,例如通过监听套接字(如Web服务),或从它监视的文件中读取,或通过Windows消息(而不是老派!)。假设你执行的是Door.exe,那么最重要的就是你。