level 5
有没有相关的函数可以定时向系统获取时间?即每分钟或者每小时就向系统请求获得时间信息,而这关键就是如何得到多长时间才是每分钟或者每小时。
另外,百度的话可以在文库那里找到一份代码,那是使用crt单元中的sound以及delay来实现上面所说的功能,即使用delay来确定多长时间是一秒。
By the way,吧里有没有使用CP Pascal Editor的?有的话指教下如何使用其中的crt单元。(最新版本用不了crt单元,前一个版本可以用crt单元,但是却不能用dos单元……)
2012年11月26日 16点11分
1
level 5
具体如何实现?调用windows相关的api?哪些?
2012年11月27日 00点11分
3
level 5
刚百度到可以用sleep函数,但经测试sleep在pascal的单位似乎既不是微秒也不是秒,这和机器有关?
2012年11月27日 00点11分
4
level 1
gettingtime函数+delay函数解决……free Pascal就可以解决这个问题的……
2012年11月27日 04点11分
5
delay是crt库中的函数,有没有办法不用到crt库的函数的?
2012年12月03日 11点12分
@ax_pokl 每台电脑for一万次的时间不同。
2016年04月04日 05点04分
@阿程古DM 可以用windows库:windows.sleep(【time】); 和delay差不多的
2016年04月08日 14点04分
level 11
命令行
shutdown -s -t 秒
然后到了时间自动关机提醒
2012年12月01日 02点12分
10
用Pascal调用cmd?如果是的话,那些变量X怎么传递给cmd?
2012年12月03日 11点12分
回复 rdrweb :
![[睡觉]](/static/emoticons/u7761u89c9.png)
program run;[$1]uses dos;[$1]var s:string;[$1]procedure cmd(s:string);[$1]begin[$1]s:='/k "'+s+'"';[$1]Exec('cmd.exe',s);[$1]begin[$1]readln(s);[$1]cmd(s);[$1]end.
2012年12月03日 11点12分
回复 被袭胸的炮姐 :也就是说把要关机的秒数当作字符串s输入,然后通过s:='shutdown -s -t '+s这样的运算,再调用cmd执行?
2012年12月03日 11点12分
回复 rdrweb :shutdown -s -t S 是cmd的定时关机语句,这里就是在cmd使用定时关机来实现,但是你需要改一下程序
2012年12月03日 11点12分
level 5
找到一个调用Windows API的pascal代码,但是这个要求在前台运行,有没有什么办法可以令其在后台运行,然后在特定时间内弹出提醒?
---------------------代码分隔符---------------
uses windows;
var
msg:TMSG;
i:integer;
procedure timer_tick(hwnd, uMsg, eventID, dwTime:longword);stdcall;
begin
inc(i);
writeln(i);
end;
BEGIN
SetTimer(0,0, 1000, @timer_tick);
while GetMessage(@msg, 0, 0, 0) do
DispatchMessage(@msg);
END.
2012年12月03日 11点12分
11
thanks
2016年04月04日 03点04分
level 9
有这么麻烦么?
Free Pascal的DOS单元有相关子程序:
uses DOS;
gettimg(h,m,s,ms)
注意ms是0-99的。
2012年12月16日 13点12分
13
level 9
function time():longint;
var th,tm,ts,tms:word;
begin gettime(th,tm,ts,tms);
time:=th;
time:=time*60+tm;
time:=time*60+ts;
time:=time*100+tms;
end;
2012年12月16日 13点12分
14
level 12
用dos里面的gettime。。。到时候while(true) writeln(chr(7));就可以了。。。
2012年12月22日 09点12分
15
level 12
timer组件或settimer killtimer
2012年12月23日 07点12分
16