| 
 | 
没有WIN8系统,WIN7下大概看了下。 
组策略有禁止的关机,休眠,睡眠,重启的,剩下切换,注销,锁定,切换,注销可以禁用掉。 
 
 
authui.dll        SHRegGetValueW HKEY_LOCAL_MACHINE, "Software\Policies\Microsoft\Windows\WindowsUpdate\AU", "NoAUAsDefaultShutdownOption", SRRF_NOEXPAND | SRRF_RT_REG_DWORD | SRRF_RT_REG_SZ 
authui.dll        SHRegGetValueW HKEY_LOCAL_MACHINE, "Software\Policies\Microsoft\Windows\WindowsUpdate\AU", "NoAUShutdownOption", SRRF_NOEXPAND | SRRF_RT_REG_DWORD | SRRF_RT_REG_SZ 
authui.dll        SHRegGetValueW  HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system", "DisableLockWorkstation", SRRF_RT_REG_DWORD, NULL 
 
StartMenuLogOff,HideFastUserSwitching好像没有看到读取的地方,可能别的地方读到全局变量里了吧。 
 
点下那个小箭头会: 
explorer.exe!CDesktopHost::OnTrackShellMenu 
 shell32.dll!CMenuDeskBar::Popup 
   explorer.exe!CDeskHostShellMenuCallback::CallbackSM 
    explorer.exe!CLogoffPane::AddShutdownOptions 
 
CLogoffPane::AddShutdownOptions方法中会通过根据上面的键值创建一个Option列表,然后按这个列表插入到关机选项(最多5项), 
然后判断是否可以休眠,如果可以插入休眠菜单,再查看是否有关机口令权限,有的话把重启,关机插入。 
 
可以在上面的这个地方插入代码强制修改。 
或者启动个常驻进程,判断右键菜单,发现了就让特定菜单变灰或者删除。 
 
 
 |   
 
 
 
 |