我尝试通过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或插入其他程序。