写了一个提醒程序做成系统服务。运行得倒是没有问题,每隔3秒检查一下时间,时间到了就提醒。但是发现每3秒光标旁边就会出现一次沙漏。我的任务在ServiceMain()中调用:
ServiceMain();stdcall;里面涉及我的任务的是下面这样的
while true do
begin
Sleep(3000);
Myfunc();//时间到了没?
end;怎么才能不让沙漏出现呢?
ServiceMain();stdcall;里面涉及我的任务的是下面这样的
while true do
begin
Sleep(3000);
Myfunc();//时间到了没?
end;怎么才能不让沙漏出现呢?
解决方案 »
- 自定义CXGRID显示列的问题.
- webbrowser高级控制Content-Type问题
- 通用问题:点修改,和增加按钮能不能调用同一个窗体?
- 请教关于编写定时器ActiveX控件的问题(新手)
- 用RegisterServiceProcess 着个函数,应该包含那个单元啊,在线等待,大家帮忙啊
- 两个问题,高手做答,88分答谢,图个吉利
- 哪位能给我一个 长宋体简体字的TureType字库?
- 如何取到excel工作表中的行数?
- 请问,如何写一个程序,让它在开机的时候自动运行?
- 报表的问题
- delphi中嵌入了b/s网页,其他机器都正常,但是在一台新安装的windows XP机器上打开该页面看到的是一片空白,这是为啥了?
- 雪MM来这也
或者你是不是用了这个?
screen.cursor:=crHourGlass
没有使用screen.cursor这样的语句。程序没生成窗体,只有messagebox。
Timer.Interval = 3000;
procedure TForm1.Timer1Ontimer(Sender: TObject);
begin
Myfunc();//时间到了没?
end;2、把
while true do
begin
Sleep(3000);
Myfunc();//时间到了没?
end;
放到线程里执行,让Sleep只阻塞这个线程3、检查程序是不是有
screen.cursor:=crHourGlass代码存在,查找一下
begin
Sleep(3000);
Myfunc();//时间到了没?
end;
放到线程里执行.
这个提议值得考虑。我看看,研究一下怎么把它放到线程里。
while true do
begin
Application.processmessage;
Sleep(3000);
Myfunc();//时间到了没?
end;
这一句是什么意思呢?
使用的单元只有Windows,winsvr,shellapi.
风险大的