我想以编程方式和按需(立即)在Windows XP / 7的开始菜单中禁用或启用Shutdown
,Restart
,Hibernate
和Sleep
选项。
使用gpedit.msc
工具并将Remove and prevent access to Shut Down command
设置为Enabled
/ Disabled
会立即影响开始菜单,并根据需要显示/隐藏这些选项。但我不能写一个程序来做这件事。
我发现了一个编程解决方案,即在此注册表路径中创建值为NoAction
的{{1}}变量:
1
但这不会立即停用Shutdown / etc,并且会在<{strong>重新启动HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
后影响。
我还尝试通过RefreshPolicyEx,RefreshPolicy,SHChangeNotify以及广播explorer.exe
和explorer.exe
通知WM_SETTINGCHANGE
,但这些都没有通知资源管理器重新阅读注册表/政策。
我想使用Group Policy API将是一个很好的解决方案,但不知道如何使用它。您能否给我一个简单的代码来应用组策略API的本地组策略?
或者,您是否知道以其他方式立即以编程方式启用/禁用shutdown / etc?
注意:目标平台 Windows XP 和 Windows 7