首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

delphi根据数据库服务器时间来限制软件使用的有关问题,请问

2013-06-26 
delphi根据数据库服务器时间来限制软件使用的问题,请教!代码如下,单击button,根据数据库服务器时间来限制

delphi根据数据库服务器时间来限制软件使用的问题,请教!
代码如下,单击button,根据数据库服务器时间来限制软件使用时间!程序可以运行!但是结束的时候报错!请高手帮忙看看错在哪里?感谢!!
procedure TForm1.Button1Click(Sender: TObject);
function  DateNow:TDateTime;
begin
with 
ADOQuery1.Create(nil)dotryconnection:=ADOconnection1;
SQL.Text:='select GetDate() as FDate';
Open;
Result:= FieldValues['FDate'];
finallyend;
end;
begin
if  DateNow>strtodatetime('2013-05-04 22:21:00') then 
begin
showmessage('程序错误!');
application.Terminate;
end;
end;
end. 

报错内容图片delphi根据数据库服务器时间来限制软件使用的有关问题,请问
[解决办法]
不太清楚你说的结束报错是指进入application.Terminate结束报错。
还是DateNow合格,然后正常关闭报错。
从你代码来看,DateNow这个函数中 时间比较,格式可能有问题,跟踪查一下
[解决办法]
你的单击事件执行一次则无错误产生.
两次以上则会出现你说的错误,因为重复ADOQuery1.Create(nil),所以将代码改为如下:

procedure TForm1.Button1Click(Sender: TObject);
function  DateNow:TDateTime;
begin
 with ADOQuery1 do
  try
  Close;
 connection:=ADOconnection1;
 SQL.Text:='select GetDate() as FDate';
 Open;
 Result:= FieldValues['FDate'];
 finally
 end;
end;

begin
 if  DateNow>strtodatetime('2013-05-08 22:21:00') then
 begin
 showmessage('程序错误!');
 application.Terminate;
 end;
end;

热点排行