Точнее сказать работает, но в приложении с формой. Мой приложение без формы, и таймер начинает работать если, например, вывести сообщение (ShowMessage). Подскажите, что делать? При этом не работают именно таймеры, все остальное работает без проблем. Таймер создаю через SetTimer
var timer1: word = 0; timer2: word = 0; timer3: word = 0; Создаю таймер так: function CreateTimer(timer: WORD;IntervalSecond: WORD; TimerFunc: TFNTimerProc): BOOL; begin try Timer := SetTimer(0, 0, IntervalSecond, TimerFunc); Result := (Timer <> 0); except Result := false; end; end; Сами функции: procedure func1; stdcall; begin ... end; procedure func2; stdcall; begin ... end; procedure func3; stdcall; begin ... end; procedure EnableKeylogger; begin try CreateTimer(timer1, 1, @func1); CreateTimer(timer2, 3000, @func2); CreateTimer(timer3, 2000, @func3); except end; end; Все равно не работает
ты случаем процедуру EnableKeylogger вешаешь не на CreateForm? Если нет, то на что? Если да, то догадайся почему не работает программа которая не имеет формы?
Как один из вариантов, вместо таймера исплоьзовать потоки, а в теле func1, func2 и func3 вставить нужную задержку через sleep