mirror of
https://github.com/fastfetch-cli/fastfetch.git
synced 2026-10-30 09:33:39 +01:00
Processes: add support for Windows
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
extern "C" {
|
||||
#include "processes.h"
|
||||
}
|
||||
#include "util/windows/wmi.hpp"
|
||||
|
||||
uint32_t ffDetectProcesses(FFinstance* instance, FFstrbuf* error)
|
||||
{
|
||||
FF_UNUSED(instance);
|
||||
|
||||
IEnumWbemClassObject* pEnumerator = ffQueryWmi(L"SELECT NumberOfProcesses FROM Win32_OperatingSystem", error);
|
||||
|
||||
if(!pEnumerator)
|
||||
return 0;
|
||||
|
||||
IWbemClassObject *pclsObj = NULL;
|
||||
ULONG uReturn = 0;
|
||||
|
||||
if(FAILED(pEnumerator->Next(WBEM_INFINITE, 1, &pclsObj, &uReturn)) || uReturn == 0)
|
||||
{
|
||||
ffStrbufAppendS(error, "No Wmi result returned");
|
||||
pEnumerator->Release();
|
||||
return 0;
|
||||
}
|
||||
|
||||
int64_t result = 0;
|
||||
ffGetWmiObjInteger(pclsObj, L"NumberOfProcesses", &result);
|
||||
pclsObj->Release();
|
||||
pEnumerator->Release();
|
||||
return (uint32_t)result;
|
||||
}
|
||||
Reference in New Issue
Block a user