微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 c# 进程对象

如何解决使用 c# 进程对象

所以我有一些 C# 代码可以驱动一个 citrix 进程,并且由于您使用 PID 123 调用它,它最终会以 PID 456 运行,因此我们需要检查 wfica32.exe 的所有正在运行的进程,然后检查 Windows 标题以查看如果它仍在运行。一个进程就可以了,它在标题中有程序的名称。第二个不只是在标题中有一些患者数据。可以知道我的窗口是否正在为该患者运行,但不知道它是否在运行。因此,试图从进程对象中查看是否有从 citrix 运行的最终进程名称?或者进程对象的任何信息可能会让我知道下一个 citrix 进程而不使用窗口标题

从这里开始

            System.Diagnostics.processstartinfo startInfo = new System.Diagnostics.processstartinfo(location,C.GetString(Configuration.Options.CitrixLaunchParameters));
            _citrixProcess.StartInfo = startInfo;
            log.Debug(fn + location + C.GetString(Configuration.Options.CitrixLaunchParameters));
            _citrixProcess.Start();

以这种方式监控

                    Process myProcess = null;
                    if (Configuration.GetBoolean(Configuration.Options.LaunchThinClient))
                    {
                        Process[] myProcess = Process.GetProcessesByName("wfica32");
                        foreach (Process p in myProcess )
                        {
                            //log.Debug(fn + "Main Window Title: " + p.MainWindowTitle);
                            //log.Debug(fn + "Process Id: " + p.Id);
                            //Todo logic needed here for multiple instances,move up...
                            if (p.MainWindowTitle.Contains("Imaging Desktop"))
                            {
                                log.Info(fn + _applicationName + "Citrix Client Process found");
                                
                            }
                            
                        }
                    }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。