请问如何编制告警程序?(50分)

  • 主题发起人 主题发起人 袁卫华
  • 开始时间 开始时间

袁卫华

Unregistered / Unconfirmed
GUEST, unregistred user!
我想用beep实现如果出现问题即发出告警声,直到
按键盘或点击鼠标才关闭声音.请问如何编制?
 
messagebeep(0);
 
for循环
messagebeep(0)
中间加一个等待系统命令,break
具体是什么等我查查
手头没书
 
可以for一个循环, 然后判断一个变量是否改变.
在onkeypress, onclick中改变变量.
 
cytown高明!
 
狡猾狡猾地,xixi
 
补充cytown: 在for循环中<font color=red>必需</font>加application.processmessage!
 
不过是错的,在做for循环时,系统是不会再响应其它事件的,xixi
我看还是加个线程beep吧,用事件中断线程
 
小天: 睡觉了吗?
你该不会想证明人类不睡觉可以活多久吧? :-)
 
cAKK好凶也。。。。。。
 
这样也不好,
不如直接写端口,让它自己去响,不占用cpu时间。
再在mouse或keyboard事件中去让它停下来。
不过端口号我记不清了;-)
 
AMO:不同的机器的端口号一样吗?
 
beep的端口应该是一样的.
 
加Timer, 10毫秒Beep一次;OnClick中设Timer.Enabled := False;
 
写端口,端口号:
端口43H 送入 B6H 以初始化定时器方式
端口42H =533H*896/声音频率

端口61H 送入3,扬声器开始响,送入0,关闭。
 
我个人认为用timer比较好!
 
implementation
var
flag:boolean

oncreate
flag := false;

onkeypress
flag := false;

onmousedown
flag := false;

onYourErrEvent
flag := true;
timer1.enabled := true;

ontimer
if flag = false then
begin
tier1.enabled := false;
flag := false;//not nessary in fact
exit;
end;
messagebeep(0);
 
后退
顶部