JesúsGandia Master


Registrado: 17 Jul 2004Mensajes: 403Ubicación: Gandia, Valencia
|
Publicado: Sab 18 Jun, 2005 6:11 pm Asunto: Sobre Login en BDD Interbase |
|
|
Este codigo que he podido ver en el foro da problemas cuando haces una restauración sobre la base de datos:
| Código: |
void __fastcall TMDatos::IBDatabaseLogin(TIBDatabase *Database,
TStrings *LoginParams)
{
/* (Cod("texto a codificar")); funcion para codificar*/
LoginParams->Values["USER_NAME"] = Cod("Nombre de usuario codificado");
LoginParams->Values["PASSWORD"] = Cod("Clave codificada");
}
|
Y el proplema biene porque cuando haces una restauración primero debes de cerras la Base de datos, de lo contrario falla, y por otra parte si la cierras se pierde el login del evento IBDatabaseLogin.
Otra forma de hacerlo pudiendo poner la clave codificada, o no, es en el evento "OnCreate" del Modulo de datos con este codigo:
| Código: |
void __fastcall TMDatos::DataModuleCreate(TObject *Sender)
{
/*Le paso los valores a TIBDatabase. Codificar es una funcion propia que
codifica un array con el segundo parametro a 1 y decodifica con el seundo parametro a 0. Previamente le paso el array codificado, para que con un editor exadecimal no puedan ver las claves*/
MDatos->IBDatabase->Params->Values["USER_NAME"] = Codificar("Nombre de usuario codificado",0);
MDatos->IBDatabase->Params->Values["PASSWORD"] = Codificar("Clave codificada",0);
/*Le paso los valores a TIBBackupService*/
MDatos->IBDCopia->Params->Values["USER_NAME"] = Codificar("Nombre de usuario codificado",0);
MDatos->IBDCopia->Params->Values["PASSWORD"] = Codificar("Clave codificada",0);
/*Le paso los valores a TIBRestoreService*/
MDatos->IBDRestauracion->Params->Values["USER_NAME"] = Codificar("Nombre de usuario codificado",0);
MDatos->IBDRestauracion->Params->Values["PASSWORD"] = Codificar("Clave codificada",0);
}
|
De esta forma puedes pasar todos los user_name y password a tantos componentes como necesites y poniendolo solo una vez no tendrás que volver a preocuparte de ello. Lo digo por si a alguien le pudiera interesar, de esta forma si cierras la Base de datos para restablecer una copia de seguridad no tienes problemas y puedes seguier trabajando con tu aplicacion. _________________ Muchos hombres no se equivocan jamás porque no se proponen nada razonable. |
|