How do I launch a process with low priority? C#
c#, process, shellexecute
Solution
Try setting the PriorityClass AFTER you start the process. Task Manager works this way, allowing you to set priority on a process that is already running.
Problem
I want to execute a command line tool to process data. It does not need to be blocking. I want it to be low priority. So I wrote the below ``` Process app = new Process(); app.StartInfo.FileName = @"bin\convert.exe"; app.StartInfo.Arguments = TheArgs; app.PriorityClass = ProcessPriorityClass.BelowNormal; app.Start(); ``` However, I get a `System.InvalidOperationException` with the message "No process is associated with this object." Why? How do I properly launch this app in low priority? Without the line `app.PriorityClass = ProcessPriorityClass.BelowNormal;` the app runs fine.