VERIFICANDO A DATA DO DIA
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
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
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.
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.
Olá
Banco Acess e em muitos casos a somente uma máquina.
Banco Acess e em muitos casos a somente uma máquina.
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
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
O Active Lock pode monitorar a data por voce e é uma das soluções mais simples e eficiente.
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
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
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.
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...
Registro e arquivos podem sumir ao restaurar o SO...
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
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
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
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
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.
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.
Tópico encerrado , respostas não são mais permitidas