如何在程序中屏蔽开始菜单,不让用户按Ctrl-Esc键打开开始菜单。(100分)

  • 主题发起人 主题发起人 123456
  • 开始时间 开始时间
1. 屏蔽任务栏:
隐藏:ShowWindows(handle,SW_HIDE);
恢复:ShowWindows(handle,SW_RESTORE);

2. 屏蔽系统按键 SystemParametersInfo();
 
使用windows API来实现
BOOL SystemParametersInfo( UINT uiAction, UINT uiParam, PVOID pvParam, UINT fWinIni)
如:SystemParametersInfo(SPI_SCREENSAVERRUNNING,0,1,0)则是屏蔽CTRL + DEL+ALT
具体的键值你可以在WINDOWS.PAS中查找
 
除了 zengr 的屏蔽热键外, 另外应该:
再找到开始按钮的句柄,并Disable之
EnableWindow(FindWindowEx(FindWindow('Shell_TrayWnd', nil),0,'Button',nil),False)
 
用钩子……(他是说不让用户按Ctrl-Esc键打开开始菜单)
 
SystemParametersInfo
 
不知道屏蔽ctrl-esc的SystemParametersInfo的键值是多少,那位大侠知道。
 
屏蔽所用的系统按键也可以。
 
; 让开始按钮失效
{ Enable: }
EnableWindow(FindWindowEx(FindWindow('Shell_TrayWnd', nil),0,'Button',nil),TRUE);
{ Disable: }
EnableWindow(FindWindowEx(FindWindow('Shell_TrayWnd', nil),0,'Button',nil),FALSE);
 
多人接受答案了。
 
后退
顶部