Fórum maximu user count exceeded !!! #234660

27/05/2004

0

Olá ..

Bom, meu sistema começou a dar esse erro - ´maximu user count exceeded´ - depois que inseri uma procedure DataHoraServidor e acesso2:

procedure TFRM_Principal.DataHoraServidor;
//executada no método ONTime do TTImer
var
SystemTime : TSystemTime;
resposta : LongBool;
DateTime: TDateTime;
begin

with IBQuery1 do
begin
Close;
SQL.Text:=´SELECT CURRENT_DATE, CURRENT_TIME FROM RDB$DATABASE´;
Open;
end;

DateTime := StrToDateTime(IBQuery1.Fields[0].AsString + ´ ´ + IBQuery1.Fields[1].AsString );
DateTimeToSystemTime(DateTime, SystemTime);
//Colocar a data e hora do sistema
resposta := SetLocalTime(SystemTime);

if resposta then
SBR_Principal.Panels[0].Text := DateTimeToStr(Now);
end;


EM ACESSO2
{executada no método OnCreate do form principal}
if OLog.ModalResult = MrOk then
begin
DTB_Principal.Open;
{Sequencia de codigo para alterar data e hora do computador local por data e hora do servidor}
IBDatabase1.LoginPrompt := False;
IBDatabase1.Params[0] := ´user_name=´+Olog.EDT_Nome.Text;
IBDatabase1.Params[1] := ´password=´+Olog.EDT_Senha.Text;
IBDatabase1.Connected := True;
//SBR_Principal.Panels[1].Text := IBDatabase1.Params[0];
hora := True;
end


Sendo que utilizo dois modos de conexão, com DataBase e com IBDatabase, isto pq a única maneira para atualizar o sistema com a hora do servidor é pelo IBDatabase ( pois o usuario estava mudando o dia e hora do computador local ), e o restante da minha aplicação está conectada ao BD ( Interbase 6.0 ) pelo Database.

Oq está ocasionando isto??


Karencamila

Karencamila

Responder

Posts

31/05/2004

Welter

Sua funcao apenas conecta no banco e deixa a conexão pendurada, o contador de usuarios online nao é decrementado desta maneira, voce precisa dar o close na sua funcao antes de sair dela, bem como destruir tudo que criou assim evitando de deixar coisas na memoria.

é uma pratica bastante recomendada tanto aqui como em qualquer parte do sistema.

Abracao

Marcelo


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar