MFC 判断程序是否是高权

BOOL IsAdministrator()

{

BOOL bIsElevated = FALSE;

HANDLE hToken = NULL;

if (OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &hToken))

{

DWORD dwReturnLength = 0;

TOKEN_ELEVATION te;

if (GetTokenInformation(hToken,(_TOKEN_INFORMATION_CLASS)TokenElevation, &te, sizeof(te), &dwReturnLength)) {

if (dwReturnLength == sizeof(te))

bIsElevated = te.TokenIsElevated;

}

CloseHandle(hToken);

}

return bIsElevated;

}

if (IsAdministrator())

{

//AfxMessageBox(_T("IsAdministrator true"));

}

else

{

AfxMessageBox(_T("Please run with administrator privileges."));

return FALSE;

}

相关推荐
CSDN_RTKLIB1 小时前
【字符编码】有无BOM的UTF-8
c++
Chary20162 小时前
opengl 学习资料路径
c++·opengl
im_AMBER2 小时前
Leetcode 102 反转链表
数据结构·c++·学习·算法·leetcode·链表
今儿敲了吗2 小时前
01|多项式输出
c++·笔记·算法
程序员Jared2 小时前
C++11—mutex
c++
朔北之忘 Clancy3 小时前
2025 年 9 月青少年软编等考 C 语言一级真题解析
c语言·开发语言·c++·学习·数学·青少年编程·题解
量子炒饭大师3 小时前
【C++入门】Cyber底码作用域的隔离协议——【C++命名空间】(using namespace std的原理)
开发语言·c++·dubbo
REDcker3 小时前
RTCP 刀尖点跟随技术详解
c++·机器人·操作系统·嵌入式·c·数控·机床
楚Y6同学3 小时前
基于 Haversine 公式实现【经纬度坐标点】球面距离计算(C++/Qt 实现)
开发语言·c++·qt·经纬度距离计算
老歌老听老掉牙4 小时前
优化样条曲线拟合参数解决三维建模中的截面连续性问题
c++·opencascade·样条曲线