Como limitar quantidade de instâncias do programa abertas

24/06/2008

2

Olá, tenho um sistema de automação comercial e gostaria de saber como posso controlar e limitar a quantidade de instâncias do meu programa abertas nas máquinas.
Quero implementar um controle para evitar que meus clientes instalem o sistema em mais máquinas que o combinado.
Levando em conta que o executavel está no servidor.

Já pesquisei mas nada resolveu meu problema.
http://forum.devmedia.com.br/viewtopic.php?t=3635&highlight=inst¬E2ncias+++sistema
http://forum.devmedia.com.br/viewtopic.php?t=51440&highlight=mais+++++inst¬E2ncia

Seria interessante implementar um controle onde eu salvasse em tempo real um campo com a quantidade de instâncias abertas na rede em uma tabela do banco de dados.
uso paradox, delphi 7


Responder

Posts

24/06/2008

Ant.carlos/sp

Olá!
Caro amigo!
Já usei Paradox há muito tempo, mas tenho uma dica:
Veja se vc consegue pegar a lista de usuario q estão usando o banco de dados, faz a contagem e decida o q fazer.
Outra, vc pode cria um cadastro de terminais e verificar ao instanciar se o mesmo consta no cadastro.
veja + abaixo.

espero ter ajudado!

100+

ANT.CARLOS/SP


-------------------------
LISTA DE USUÁRIOS QUE ESTÃO ACESSANDO AS TABELAS

procedure GetUsers(UserList: TStrings);
var
TmpCursor : hDbiCur;
rslt :dbiResult;
UsrDesc : USERDesc;
begin
UserList.Clear;
Check(DbiOpenUserList(TmpCursor));
try
repeat
Rslt:= DbiGetNextRecord(TmpCursor, dbiNOLOCK, @UsrDesc, nil);
if Rslt <> DBIERR_EOF then
UserList.Add(UsrDesc.szUserName);
until Rslt <> DBIERR_NONE;
finally
Check(DbiCloseCursor(TmpCursor));
end;
end;
-------------------------


Responder