VERIFICANDO A DATA DO DIA

HUBER 06/06/2014 15:36:10
#438768
Caros amigos!

Tenho um tratamento para vencimento da licença do sistema por data e para que o cliente não fique na mão justo em um final de semana eu começo avisar que sua licença vai expirar com três dias de antecedência, assim, ele já pode entrar em contato para pegar a liberação. Acontece que se o cliente trocar todo dia a data do micro para o mesmo dia a licença nunca vai vencer, sempre faltará aqueles três dias.

Alguma sugestão para que eu possa também estar considerando como trava.

grato
LEANDROSANTOS 06/06/2014 16:54:00
#438770
Huber,

O que acha de gravar numa tabela a data e a hora do servidor, se você trabalha com banco de dados SQL Server é fácil, só usar GETDATE, e comparar com a data e hora do último acesso.
Acredito que assim você conseguirá burlar esse problema que está tendo.
HUBER 06/06/2014 17:35:04
#438772
Olá

Banco Acess e em muitos casos a somente uma máquina.
NILSONTRES 06/06/2014 19:47:01
#438773
Você precisa gravar a ultima data com os recursos que vc tem, e sempre que o sistema iniciar, a data do pc, nunca deve ser menor que essa ultima data.
Bco de dados/Registro do Windows etc...
A Maioria ou boa parte não pensa nisso, mas isso é basico para vc não ter enormes problemas com seu sistema.
Se vc não faz essa verirficação, independente de ser para licenças, corre um grande risco.
Imagine que a bateria do pc pifou, isso é muito comun, o cliente vai trabalhar naquele dia com uma data passada, imagiine na hora
de puxar relatorios de pesquisas o que não vai acontecer.
E não adianta que o cliente não peercebe isso, nos meus primeiros sistemas de 10 anos atras, eu colocava uma tela
onde todo dia na primeira abertura ele pedia para confirma se a data do pc estava correta, mostrando uma tela com a data do pc, e nem assim adiantava, o usuario clicava de qualquer jeito e não via que a data estava errada, já tivemos que refazer um dia inteiro de trabalho por causa disso, e poderia ser pior.
Hoje, como 90% ou mais dos clientes possuem internet, o sistema busca em um servidor web o correto horario e altera, já houve
casos de pcs até sem bateria trabalhar direitinho, mas se o clinete não tem net, dai abra uma tela de confirmação de data.
Desulpe a carta. rsrsrs
ROBSON 06/06/2014 23:35:05
#438777
O Active Lock pode monitorar a data por voce e é uma das soluções mais simples e eficiente.

HUBER 27/06/2014 13:55:26
#439239
Galera, voltando ao assunto pois agora necessito mesmo.

Olá NILSONTRES
Sobre a data pensei em gravar a data e hora quando o usuário sair do sistema e sempre verificar ao entrar que a data e hora tem que serem maiores que o último acesso, minha dúvida é que se acontecer de o computador por algum motivo ficar com data pra frente, ai se o usuário acertar a data correta o sistema não vai entrar.

Quanto a Banco de Dados e Registro do Windows o que você quis dizer.

abraços, e sobre sua carta foi bem útil

NILSONTRES 27/06/2014 14:05:05
#439241
Citação:

Quanto a Banco de Dados e Registro do Windows o que você quis dizer.


Onde vc vai gravar essa data, banco ou regedit.
Citação:

sempre verificar ao entrar que a data e hora tem que serem maiores que o último acesso


Maior ou Igual, isso mesmo.

Citação:

se acontecer de o computador por algum motivo ficar com data pra frente


O computador só adianta a data se o usuário fizer isso, pois por falha de bateria sempre retorna a data de fabricação. Nesse
caso o usuário assume a culpa. Se a data for adiantada e em seguida abrir o sistema, obviamente a data sera gravada e não abrira depois ao retornar o relógio.
NAUTILUZ 27/06/2014 14:06:29
#439242
O ideal seria verificar a data online via inet com recurso de uma Webpage propia, mas teria que obrigar o cliente sempre ter conexão antes de iniciar o aplicativo..
Registro e arquivos podem sumir ao restaurar o SO...
HUBER 27/06/2014 14:38:10
#439243
Olá,

Minha ideia mesmo é gravar no banco de dados (MDB) data e hora do ultimo acesso ou até mesmo pensei em usar a função abaixo para retornar registros do meu banco.

Dim fso As New FileSystemObject
Set arq = fso.GetFile([Ô]caminho.mdb[Ô])

With arq
List1.AddItem [Ô]Tamanho : [Ô] & vbTab & FormatNumber(.Size, 0)
List1.AddItem [Ô]Data de criação : [Ô] & vbTab & .DateCreated
List1.AddItem [Ô]Último acesso : [Ô] & vbTab & .DateLastAccessed
List1.AddItem [Ô]Última alteração : [Ô] & vbTab & .DateLastModified
List1.AddItem [Ô]nome abreviado : [Ô] & vbTab & .ShortName
End With

Em relação a data adiantar com certeza será culpa do usuário só que nesse caso pode acontecer involuntário, ai eu teria que ter uma alternativa para entrar no sistema
HUBER 27/06/2014 17:24:57
#439247
Olá amigos

Estou testando esse comando FileDateTime(caminhoarquivo.mdb) mais aparentemente ele não atualiza a data de modificação, as vezes demora,etc

Alguém conhece algum outro comando para ler a data que um banco foi acessado
MARCELO.TREZE 27/06/2014 17:58:12
#439249
bom eu fiz o seguinte: além da verificação da data atual meu programa possui um contador de tempo de uso.

Faço assim, se dou 3 meses para teste então coloco a verificação por data inicial e data atual, além disso procedo da seguinte maneira:

3 meses são iguais a 2160 horas,, então quando o meu programa é usado existe um timer que conta o tempo de uso, exemplo: se a pessoa usa o programa por 3 horas, o programa grava em um arquivo oculto ou em algum lugar do registro, se o programa é utilizado novamente por mais 2 horas esta é somada a anterior e gravada, assim ao se totalizar 2160 horas o programa trava.

desta maneira a pessoa pode até enganar o sistema por algum tempo, porém ainda assim terá o programa travado, mesmo que data nuca chegue a data de vencimento.


Página 1 de 2 [11 registro(s)]
Tópico encerrado , respostas não são mais permitidas