Форум: "Система";
Текущий архив: 2003.01.20;
Скачать: [xml.tar.bz2];
ВнизСистемный динамик Найти похожие ветки
← →
symbol (2002-11-05 12:31) [0]Вот такой вопрос собственно:
Как заставить системный динамик постоянно выдавать звук до определенного события (реакция пользователя или поступление данных с СОМ порта)?
Windows 2000, D7
← →
Marcus (2002-11-05 13:59) [1]ThreadProc(
begin
while not StupidUserFinallyAnswered do
MessageBeep($FFFFFFFF);
end;
CreateThread(..., @ThreadProc, );
← →
symbol (2002-11-06 12:58) [2]2 Marcus
Спасибо за совет, но не совсем понятно, я с треадами еще не работал, если можно, объясни поподробнее.
Подробности:
Есть база данных. С СОМ порта поступает определенные данные. По выборке из БД определяется критичность этих данных, и если они критичны, нужно привлечь внимание пользователя (постоянный звуковой сигнал). Пользователь должен произвести определенные децствия(кликнуть мышой в определенном месте), после этого сигнал выключается.
← →
Marcus (2002-11-06 14:52) [3]Ну примерно так, я думаю
StupidUserFinallyAnswered := false;
WaitCommEvent(...
ReadFile(hPort, ...); // что-то читаем из COM
if CriticalData then begin
CreateThread(..., @ThreadProc, );
end;
...
procedure MyFormOnMouseDown(...);
begin
StupidUserFinallyAnswered := true;
end;
т.е. создается отдельный поток, в котором непрерывно орет динамик, до тех пор пока юзер не щелкнет куда-либо. Тогда поток прерывается, и динамик соответственно замолкает
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2003.01.20;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.01 c