2004-01-10 02:14:13 +00:00
|
|
|
/*
|
2021-12-16 01:25:32 +00:00
|
|
|
* PROJECT: ReactOS Task Manager
|
2023-06-15 17:45:15 +00:00
|
|
|
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
|
2021-12-16 01:25:32 +00:00
|
|
|
* PURPOSE: Process Priority.
|
|
|
|
* COPYRIGHT: Copyright 1999-2001 Brian Palmer <brianp@reactos.org>
|
|
|
|
* Copyright 2005 Klemens Friedl <frik85@reactos.at>
|
2004-01-10 02:14:13 +00:00
|
|
|
*/
|
2005-05-08 04:07:56 +00:00
|
|
|
|
2013-01-24 23:00:42 +00:00
|
|
|
#include "precomp.h"
|
2004-01-10 02:14:13 +00:00
|
|
|
|
2008-01-08 22:52:56 +00:00
|
|
|
void DoSetPriority(DWORD priority)
|
2004-01-10 02:14:13 +00:00
|
|
|
{
|
2007-10-31 23:26:27 +00:00
|
|
|
DWORD dwProcessId;
|
|
|
|
HANDLE hProcess;
|
2008-01-08 22:52:56 +00:00
|
|
|
WCHAR szText[260];
|
|
|
|
WCHAR szTitle[256];
|
2004-01-10 02:14:13 +00:00
|
|
|
|
2009-06-28 14:22:09 +00:00
|
|
|
dwProcessId = GetSelectedProcessId();
|
2004-01-10 02:14:13 +00:00
|
|
|
|
2009-06-28 14:22:09 +00:00
|
|
|
if (dwProcessId == 0)
|
2004-01-10 02:14:13 +00:00
|
|
|
return;
|
|
|
|
|
2008-01-08 22:52:56 +00:00
|
|
|
LoadStringW(hInst, IDS_MSG_TASKMGRWARNING, szTitle, 256);
|
|
|
|
LoadStringW(hInst, IDS_MSG_WARNINGCHANGEPRIORITY, szText, 260);
|
2023-11-01 12:43:33 +00:00
|
|
|
if (!ConfirmMessageBox(hMainWnd, szText, szTitle, MB_YESNO|MB_ICONWARNING))
|
2004-01-10 02:14:13 +00:00
|
|
|
return;
|
|
|
|
|
|
|
|
hProcess = OpenProcess(PROCESS_SET_INFORMATION, FALSE, dwProcessId);
|
|
|
|
|
|
|
|
if (!hProcess)
|
|
|
|
{
|
2008-01-08 22:52:56 +00:00
|
|
|
GetLastErrorText(szText, 260);
|
|
|
|
LoadStringW(hInst, IDS_MSG_UNABLECHANGEPRIORITY, szTitle, 256);
|
|
|
|
MessageBoxW(hMainWnd, szText, szTitle, MB_OK|MB_ICONSTOP);
|
2004-01-10 02:14:13 +00:00
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2008-01-08 22:52:56 +00:00
|
|
|
if (!SetPriorityClass(hProcess, priority))
|
2004-01-10 02:14:13 +00:00
|
|
|
{
|
2008-01-08 22:52:56 +00:00
|
|
|
GetLastErrorText(szText, 260);
|
|
|
|
LoadStringW(hInst, IDS_MSG_UNABLECHANGEPRIORITY, szTitle, 256);
|
|
|
|
MessageBoxW(hMainWnd, szText, szTitle, MB_OK|MB_ICONSTOP);
|
2004-01-10 02:14:13 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
CloseHandle(hProcess);
|
|
|
|
}
|