Ver Mensaje Individual
  #16  
Antiguo 29-05-2019
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Reputación: 19
Angel.Matilla Va por buen camino
Bueno después de unos cuantos días en que tuve abandonado este tema lo retomé ayer. Lo primero que he hecho es comprobar la configuración del PC donde aparece el problema. Es esta:

Siguiendo vuestras sugerencias he modificado algo el código. Ahora está así:
Código:
fMenu->Auxiliar->Close();
fMenu->Auxiliar->SQL->Text = "SELECT CURRENT_DATE FROM RDB$DATABASE";
fMenu->Auxiliar->Open();
TDateTime dFecha = fMenu->Auxiliar->FieldByName("CURRENT_DATE")->AsDateTime;

fMenu->Auxiliar->Close();
fMenu->Auxiliar->SQL->Text = "SELECT CAST(B.Caduca AS DATE) Caduca FROM Usuarios A, Claves B WHERE A.Nombre = :Nombre AND A.Nombre = B.Nombre AND B.Clave = :Clave";
fMenu->Auxiliar->ParamByName("Nombre")->AsString = NombreUser;
fMenu->Auxiliar->ParamByName("Clave")->AsString  = ClaveUser;
fMenu->Auxiliar->Open();
int nDias = fMenu->Auxiliar->FieldByName("Caduca")->AsDateTime - dFecha;

if (nDias < 11)
{
     cAux = "Su clave caduca el " + fMenu->Auxiliar->FieldByName("Caduca")->AsDateTime.FormatString("ddddd");

     if (nDias < 1)
     {
          Mensaje(3, cAux + ".\nDebe cambiar la clave de acceso al sistema.", "Continuar");

          Application->CreateForm(__classid(TfCamCla), &fCamCla);
          fCamCla->Tag = 1;
          fCamCla->Nombre->Text = NombreUser;
          fCamCla->ShowModal();

          if (fCamCla->Tag < 0)
          {
               TipoInstalacion = fCamCla->Tag;
               delete fCamCla;
               Mensaje(1, "No se ha modificado la clave. Sistema desconectado.", "Terminar");
               Application->Terminate();
               return TipoInstalacion;
          }
          delete fCamCla;
     }
     else
          Mensaje(4, cAux, "Continuar");
}
Sin embargo a pesar de todo me sigue mostrando la fecha como una hora; es decir: en la frase cAux = "Su clave caduca el..., en vez de poner por ejemplo Su clave caduca el 30/06/2019 me pone Su clave caduca el 00:00:00. Y reitero que es el único equipo en que lo hace y además es el único con Windows 10, por eso intuyo que es un problema del sistema operativo.
Responder Con Cita