Create IsProcessRunningAsAdmin.cpp

This commit is contained in:
vxunderground
2022-07-14 23:11:03 -05:00
committed by GitHub
parent 2f5e057fda
commit 92e3a62f21
+25
View File
@@ -0,0 +1,25 @@
BOOL IsProcessRunningAsAdmin(VOID)
{
HANDLE hToken = NULL;
TOKEN_ELEVATION Elevation = { 0 };
DWORD dwSize = 0;
BOOL bFlag = FALSE;
if (!OpenProcessToken(RfGetCurrentProcess(), TOKEN_QUERY, &hToken))
goto EXIT_ROUTINE;
if (!GetTokenInformation(hToken, TokenElevation, &Elevation, sizeof(Elevation), &dwSize))
goto EXIT_ROUTINE;
bFlag = TRUE;
EXIT_ROUTINE:
if (!bFlag)
EhSetLastError(ERROR_ACCESS_DENIED);
if (hToken)
CloseHandle(hToken);
return (bFlag ? Elevation.TokenIsElevated : FALSE);
}