C++ 赢得API用户权限C++;

C++ 赢得API用户权限C++;,c++,winapi,privileges,C++,Winapi,Privileges,我正在尝试查看用户是否具有SeLoadDriver权限。我得到了普鲁德: PLUID pld; LookupPrivilegeValue(NULL, SE_LOAD_DRIVER_NAME, pld); 但现在我不知道如何从PLUID获得一个bool,说明用户是否拥有特权。我已经阅读了相关的方法,但它认为这可能是一种直接从PLUID值获取该值的简单方法 谢谢比这要复杂一点 首先,您需要获得流程令牌的特权集(通过调用GetTokenInformation()),然后扫描从该特权集

我正在尝试查看用户是否具有SeLoadDriver权限。我得到了普鲁德:

    PLUID pld;
    LookupPrivilegeValue(NULL, SE_LOAD_DRIVER_NAME, pld);
但现在我不知道如何从PLUID获得一个bool,说明用户是否拥有特权。我已经阅读了相关的方法,但它认为这可能是一种直接从PLUID值获取该值的简单方法


谢谢

比这要复杂一点

首先,您需要获得流程令牌的特权集(通过调用
GetTokenInformation()
),然后扫描从该特权集(是从
LookupPrivilegeValue()
获取的LUID的
LUID\u和\u属性结构数组)获得的缓冲区。然后,您可以使用找到的
LUID\u和\u属性
,检查
属性
是否包含所需的标志(
SE\u PRIVILEGE\u ENABLED

请注意,在检查已启用的权限时,还应检查正在检查的
属性中是否未设置
SE\u privilege\u REMOVED
;同时删除了
SE\u特权
和启用了
SE\u特权
的特权已被删除且未启用