Как запускать внешнюю программу сразу с высоким приоритетом

{codecitation class=»brush: pascal; gutter: false;» width=»600px»}

Автор: Shadow

Предлагаю Вашему вниманию пример, который изменяет приоритет приложения. Изменение приоритета следует использовать с осторожностью, так как присвоение слишком высокого приоритета может привести к медленной работе остальных программ и системы в целом. См. Win32 help for SetThreadPriority() function.

Пример:

procedure TForm1.Button1Click(Sender: TObject);

var

ProcessID: DWORD;

ProcessHandle: THandle;

ThreadHandle: THandle;

begin

ProcessID := GetCurrentProcessID;

ProcessHandle := OpenProcess(PROCESS_SET_INFORMATION, false, ProcessID);

SetPriorityClass(ProcessHandle, REALTIME_PRIORITY_CLASS);

ThreadHandle := GetCurrentThread;

SetThreadPriority(ThreadHandle, THREAD_PRIORITY_TIME_CRITICAL);

end;

{/codecitation}

Добавить комментарий