如何知道第三方软件是否可以使用

时间:2013-10-24 18:23:08

标签: c# process

我正在开发一个WPF应用程序,供用户自动加载我们部门的Adobe After Effects项目。但是,当用户第一次调用它时,这是一个奇点。如果用户由于某种原因,在短时间内碰到多个项目,WPF应用程序会启动多个“Process.Start()”命令,这会导致After Effects崩溃错误。

当我发出“Process.Start”时,After Effects进程启动,操作系统说它正在运行,如果After Effects仍处于启动画面加载状态,尚未准备好使用。

是否有某种方法可以知道应用程序是否已启动且已加载并可以使用?

//Start process block
Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo(artPath);
process.StartInfo = startInfo;
process.Start();

//Check processes running
Process[] processes = Process.GetProcesses();
foreach (Process singleProcess in processes)
{
   if (singleProcess.ProcessName == "AfterFX")
   {
       return true; //process is running
   }
}

0 个答案:

没有答案