我想在机器关闭、重起、注销时,先运行自己的程序,然后根据原来具体的要求,来响应关闭、重起或注销。那位大侠可给我个答案。
解决方案 »
- delphi用MDI和combobox来做窗口管理
- OleContainer嵌入word后再打开一个word,OleContainer中的word 工具栏就不能用了什么原因啊?
- 请问如何解决下面的问题(关于DbGrid的)
- 请大家写写DELPHI与ACCESS的连接语句!
- 为什么.exe的图标的选项被灰掉?
- 抉择:北京vs哈尔滨[急需援助]up有分
- 积分制的弊端!造成CSDN今天这样萧条的原因!欢迎大家来讨论!
- 一个关于调用vc++写的dll的问题
- 如何使用MessageDlg()函数?
- 求解:如何在dephi中调用*.chm帮助文件?谢谢!
- 有关paradox中sql语句问题?
- treeview问题?
procedure WMQueryEndSession(var Msg: TMessage);message WM_QueryEndSession; procedure TForm1.WMQueryEndSession(var Msg: TMessage);
begin
if CheckBox1.Checked then Msg.Result :=1
else Msg.Result :=0;
end;
begin
//add your code here
CanClose := False;
end
就必须禁止用户关闭WIN9X,直到完成相应的操作,那么如何才能禁止用户
关闭WIN9X呢?其实很简单,当用户关闭WIN9X时, 系统会发送给各应用程序
一个消息wm_queryendsession, 告诉各应用程序要关机了,如果反馈回来的
消息值为0,那么WIN9X就不能关机。因此,截获wm_queryendsession,并反馈
回0,大功就告成了,下面是一个例子。 //声明拦截WM_QueryEndSession消息的过程
procedure WMQueryEndSession(var Msg: TMessage);message WM_QueryEndSession; procedure TForm1.WMQueryEndSession(var Msg: TMessage);
begin
if CheckBox1.Checked then Msg.Result :=1
else Msg.Result :=0;
end;