ctrl+alt+del?

leedeqing 2000-06-05 10:07:00
曾经向网上热心的朋友请教如何使ctrl失效,先后有两位回复,先表示感谢!
本人的目的是做一个在商场中供顾客使用的查询系统.所以要使ctrl+alt+del按下时关闭
程序的对话框不出现.
依照一朋友的指点,发现效果不佳.
程序内容如下:
先将windows98的任务栏的"总在最前"去掉;再
form.keyreview为true;
form.align为alclient;
form的onkeydown为:if key=17 then key:=0;

请各朋友指正.

另外本人孤陋寡闻,不知键盘钩子为何物?望指点!

...全文
260 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
shylsz 2000-06-07
  • 打赏
  • 举报
回复

SystemParametersInfo( SPI_SCREENSAVERRUNNING, 1, 0, 0);
halfone 2000-06-07
  • 打赏
  • 举报
回复
//函数声明
function RegisterServiceProcess(dwProcessID, dwType: Integer): Integer; stdcall; external 'KERNEL32.DLL';
//调用
RegisterServiceProcess(GetCurrentProcessID, 1);//将HIDE
//调用
RegisterServiceProcess(GetCurrentProcessID, 0);//将SHOW
halfone 2000-06-06
  • 打赏
  • 举报
回复
在已答问题中去找吧!
zhaohang 2000-06-06
  • 打赏
  • 举报
回复
试一试下面的程序:
program small;

uses
WinProcs;

{$R *.RES}

var
Dummy : integer;

begin
Dummy := 0;
{Disable ALT-TAB}
SystemParametersInfo( SPI_SETFASTTASKSWITCH, 1, @Dummy, 0);
{Disable CTRL-ALT-DEL}
SystemParametersInfo( SPI_SCREENSAVERRUNNING, 1, @Dummy, 0);
end.
kxy 2000-06-05
  • 打赏
  • 举报
回复
你去看看SystemParametersInfo这个API函数,设置SPI_SETSCREENSAVERRUNNING
让系统认为屏幕保护在运行,ctrl+alt+del就会失效.
Hank 2000-06-05
  • 打赏
  • 举报
回复
仔细看一下SystemParametersInfo()API函数。
然后可以写一个自定义函数,将系统键按自己的要求设置。
函数如下:

procedure SetSystemKey(Enable:Boolean);
//屏蔽或恢复系统功能键仅适用于Win9X (Ctrl+Alt+Del,Ctrl+ESC,Alt+Tab,WinKey)
var
Temporary:Integer;
begin
case Enable of
True: SystemParametersInfo(Spi_screensaverrunning,0,@Temporary,0);
False: SystemParametersInfo(Spi_screensaverrunning,1,@Temporary,0);
end;
end;

然后直接调用SetSystemKey(True);可以使Ctrl+Alt+Del失效。

Ok!

Hank

5,385

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧