如何刷新系统帐户下当前用户的组策略?

时间:2018-06-21 07:28:45

标签: c++ windows winapi com gpo

我尝试通过GPO禁用taskmgr

IGroupPolicyObject* p = NULL;
HRESULT hr = CoCreateInstance(CLSID_GroupPolicyObject, NULL, CLSCTX_ALL,
    IID_IGroupPolicyObject, (LPVOID*)&p);
if (SUCCEEDED(hr))
{
    HKEY key = NULL;
    HRESULT hr = p->OpenLocalMachineGPO(GPO_OPEN_LOAD_REGISTRY);
    if (SUCCEEDED(hr)) {
        p->GetRegistryKey(GPO_SECTION_USER, &key);
        // disable taskmgr
    }
    GUID RegistryId = REGISTRY_EXTENSION_GUID;
    if(SUCCEEDED(p->Save(FALSE, TRUE, &RegistryId, (GUID*) &CLSID_GPESnapIn))) {
    }
} 

它在管理员帐户下工作。

它仅在重新启动或使用系统帐户(会话0)下的gpupdate命令后才有效。

如何在系统帐户(会话0)下立即生效?
不要使用功能CreateProcessAsUser或插入其他程序。

0 个答案:

没有答案