Added suspend_process() function.
This commit is contained in:
parent
02be92208f
commit
b79936a0e6
@ -154,7 +154,10 @@ namespace MUtils
|
||||
MUTILS_API bool change_process_priority(const QProcess *proc, const int priority);
|
||||
|
||||
//Process ID
|
||||
MUTILS_API quint32 process_id(const QProcess *proc);
|
||||
MUTILS_API quint32 process_id(const QProcess *const proc);
|
||||
|
||||
//Suspend or resume processv
|
||||
MUTILS_API bool suspend_process(const QProcess *proc, const bool suspend);
|
||||
|
||||
//System timer resolution
|
||||
MUTILS_API bool setup_timer_resolution(const quint32 &interval = 1);
|
||||
|
@ -994,12 +994,35 @@ bool MUtils::OS::change_process_priority(const QProcess *proc, const int priorit
|
||||
// PROCESS ID
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
quint32 MUtils::OS::process_id(const QProcess *proc)
|
||||
quint32 MUtils::OS::process_id(const QProcess *const proc)
|
||||
{
|
||||
PROCESS_INFORMATION *procInf = proc->pid();
|
||||
return (procInf) ? procInf->dwProcessId : NULL;
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// PROCESS SUSPEND/RESUME
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
bool MUtils::OS::suspend_process(const QProcess *proc, const bool suspend)
|
||||
{
|
||||
if(Q_PID pid = proc->pid())
|
||||
{
|
||||
if(suspend)
|
||||
{
|
||||
return (SuspendThread(pid->hThread) != ((DWORD) -1));
|
||||
}
|
||||
else
|
||||
{
|
||||
return (ResumeThread(pid->hThread) != ((DWORD) -1));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// SYSTEM TIMER
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
Loading…
Reference in New Issue
Block a user