From: John John - MVP on 18 Dec 2009 07:55 Poppe wrote: > Hello and thanks for suggestions > > Does anybody know how to do this from the command line? > > The situation is that the users are very basic, and they don't know how to > use task manager. So i should somehow automate the process priority setting, > so they don't have to do it manually. > > Maybe use vbscript or something? You can do it with WMI. At the command prompt you use WMIC: wmic process where name="notepad.exe" call setpriority 16384 In a script use the Win32_Process class and the SetPriority method: ------------------------------------------------------------- Const BELOW_NORMAL = 16384 strComputer = "." Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" _ & strComputer & "\root\cimv2") Set colProcesses = objWMIService.ExecQuery _ ("Select * from Win32_Process Where Name = 'Notepad.exe'") For Each objProcess in colProcesses objProcess.SetPriority(BELOW_NORMAL) Next ---------------------------------------------------------------- Possible Priority class values are: 64 Idle Specified for a process with threads that run only when the system is idle. The threads of the process are preempted by the threads of a process that run in a higher priority class, for example, a screen saver. The idle-priority class is inherited by child processes. 16384 Below Normal Indicates a process that has priority above IDLE_PRIORITY_CLASS, but below NORMAL_PRIORITY_CLASS. For Windows 2000. 32 Normal Specified for a process with no special scheduling needs. 32768 Above Normal Indicates a process that has priority above NORMAL_PRIORITY_CLASS, but below HIGH_PRIORITY_CLASS. For Windows 2000. 128 High Priority Specified for a process that performs time-critical tasks that must be executed immediately. The threads of the process preempt the threads of normal or idle priority class processes. An example is the Task List, which must respond quickly when called by the user, regardless of the load on the operating system. Use extreme care when using the high-priority class, because a high-priority class application can use nearly all of the available CPU time. 256 Real Time Specified for a process that has the highest possible priority. The threads of the process preempt the threads of all of the other processes, including operating system processes that perform important tasks. For example, a real-time process that executes for more than a very brief interval can cause disk caches not to flush or a mouse to be unresponsive. http://msdn.microsoft.com/en-us/library/aa394599(VS.85).aspx WMI Tasks: Processes (Windows) http://msdn.microsoft.com/en-us/library/aa393587(VS.85).aspx SetPriority Method of the Win32_Process Class (Windows) John |