Como travar o relógio do Windows?
17/12/2003
0
Gostaria de saber de vcs se existe alguma rotina para evitar que o relógio do windows seja alterado por qualque usuário sem permissão.
Obrigado!!
Janderson
Posts
17/12/2003
Aroldo Zanela
A forma mais simples que encontrei foi renomear o TIMEDATE.CPL para um outro nome qualquer.
17/12/2003
Beppe
Cada janela recebe uma mensagem WM_TIMECHANGE quando o horário do sistema é alterado.
Isto vai no private do form:
procedure WMTimeChange(var Message: TWMTimeChange); message WM_TIMECHANGE;
A implementação:
procedure TForm1.WMTimeChange(var Message: TWMTimeChange); message WM_TIMECHANGE; begin SetSystemTime(Ultimo_Horario_Registrado); Message.Result := 0; end;
Você precisa manter a variável Ultimo_Horario_Registrado. Isto pode ser feito com a ajuda de um timer. A data do sistema pode ser pega com GetSystemTime.
Dificilmente você irá manter a hora exata, mas isto é o mais perto que pode chegar.
18/12/2003
Janderson
A dica que o Aroldo Zanela mandou funcionou perfeitamente. Eu fiz uma coisa interessante: Quando eu carrego o meu sistema no oncreate do meu form principal eu renomeio o arquivo e quando o programa é fechado coloco o nome original de volta
Clique aqui para fazer login e interagir na Comunidade :)