Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   3 preguntas sobre delphi y firebird (https://www.clubdelphi.com/foros/showthread.php?t=76112)

José Luis Garcí 09-10-2011 15:15:41

3 preguntas sobre delphi y firebird
 
Hola compañeros tengo tres preguntas, sobre como desde delphi poder actuar sobre firebird
1ª) Como hago para conectar el servidor de firebird si esta desconectado desde mi ejecutable?
2ª) Como descubro cual es la ruta de firebird desde mi ejecutable?
3ª) Como creo desde Delphi, sea llamando al gen (creo que es así), o de que otro método creo un user name y un password para que lo admita firebird?.

Un saludo y gracias por vuestra ayuda como siempre.

Casimiro Notevi 09-10-2011 17:16:23

Cita:

Empezado por José Luis Garcí
1ª) Como hago para conectar el servidor de firebird si esta desconectado desde mi ejecutable?

Pues si lo tienes instalado como un servicio, pues como cualquie otro servicio. Y si lo usas como ejecutable normal, pues como cualquier ejecutable.
Suponiendo que hables de hacerlo localmente. Si está en otro equipo, no sé cómo ejecutar un programa en otro ordenador y si es un servidor linux, pues más difícil todavía hacerlo desde un windows.
De todas formas, no sé para qué quieres hacerlo, una vez instalado (como servicio), está siempre funcionando y no tienes que preocuparte del mismo, además que junto al "server" va también un fbguard, un "guardián" que pone en marcha el servidor firebird si este cayera por algún motivo, cosa rara, no recuerdo haberlo visto nunca.
Cita:

Empezado por José Luis Garcí
2ª) Como descubro cual es la ruta de firebird desde mi ejecutable?

Si estás en local, pues fácil, en el registro de windows se guarda la ruta al mismo,
Aquí se guarda (HKLM):

Código:

  _INTERBASE_5_  = '\SOFTWARE\Interbase Corp\InterBase\CurrentVersion';
  _INTERBASE_6_  = '\SOFTWARE\Borland\InterBase\CurrentVersion';
  _FIREBIRD_1_    = '\SOFTWARE\FirebirdSQL\Firebird\CurrentVersion';
  _FIREBIRD_1_5_  = '\SOFTWARE\Firebird Project\Firebird Server\Instances';
  _FIREBIRD_2_0_  = '\SOFTWARE\Firebird Project\Firebird Server\Instances';
  _FIREBIRD_2_1_  = '\SOFTWARE\Firebird Project\Firebird Server\Instances';
  _FIREBIRD_2_5_  = '\SOFTWARE\Firebird Project\Firebird Server\Instances';

Y la entrada se llama: RootDirectory
Desde firebird 1.5 decidieron que siempre quedaría ahí.

Cita:

Empezado por José Luis Garcí
3ª) Como creo desde Delphi, sea llamando al gen (creo que es así), o de que otro método creo un user name y un password para que lo admita firebird?.

Bueno, yo nunca creo usuarios en firebird, pero puedes llamar a la utilidad gsec con el parámetro 'a', ejemplo:

Código:

gsec a 'elnuevo' -pw 'secreto'
Espero que te haya aclarado algo, y en caso contrario... pregunta :)

José Luis Garcí 10-10-2011 09:14:13

Hola Casimiro, te agradezco tu respuesta, el 1 problema es que en el caso del windows vista, despues de años tengo el siguiente problema con el servidor, tengo que ejecutarlo a mano y luego mientras no reinicies el equipo, sigue funcionando, ya pense en hacer una llamada directa, pero imagina que en vez de hacerlo yo, lo tenga que hacer mi socio que no tiene ni idea, o cualquier usuario en otro progrma, lo que pretendo es ponerlo al inicio del programa, si el servidor esta corriendo, lo dejo tal cual, si no lo ejecueto automáticamente, es la idea.

La pregunta 2 y 3 son conjuntas ya que el comando gsec, no se ejecuta directamente, hay que estar en el directorio, por eso queria sa
ber si hay alguna manera de detectar el directorio y ejecuatarlo desde el programa directamente, para que el usuario no tenga que interactuar, que conste que yo tambien uso las claves estandar lo que suelo encriptar los datos más privados.

Casimiro Notevi 10-10-2011 11:57:34

Cita:

Empezado por José Luis Garcí (Mensaje 415061)
Hola Casimiro, te agradezco tu respuesta, el 1 problema es que en el caso del windows vista, despues de años tengo el siguiente problema con el servidor, tengo que ejecutarlo a mano y luego mientras no reinicies el equipo, sigue funcionando, ya pense en hacer una llamada directa, pero imagina que en vez de hacerlo yo, lo tenga que hacer mi socio que no tiene ni idea, o cualquier usuario en otro progrma, lo que pretendo es ponerlo al inicio del programa, si el servidor esta corriendo, lo dejo tal cual, si no lo ejecueto automáticamente, es la idea.

No entiendo, ¿dices que con win Vista no inicia el servicio firebird al arrancar el sistema?

guillotmarc 10-10-2011 12:00:00

Cita:

Empezado por José Luis Garcí (Mensaje 415061)
Hola Casimiro, te agradezco tu respuesta, el 1 problema es que en el caso del windows vista, despues de años tengo el siguiente problema con el servidor, tengo que ejecutarlo a mano y luego mientras no reinicies el equipo, sigue funcionando, ya pense en hacer una llamada directa, pero imagina que en vez de hacerlo yo, lo tenga que hacer mi socio que no tiene ni idea, o cualquier usuario en otro progrma, lo que pretendo es ponerlo al inicio del programa, si el servidor esta corriendo, lo dejo tal cual, si no lo ejecueto automáticamente, es la idea.

Entra en el Panel de Control, Herramientas Administrativas, y ejecuta el ícono de Servicios. Busca el servicio Firebird Server y comprueba que no esté configurado para inicio Manual, en cuyo caso debes cambiarlo a Automático.

Saludos.

José Luis Garcí 10-10-2011 17:58:25

Gracias lo comprobare.

salvica 03-11-2011 20:38:47

Cita:

Empezado por guillotmarc (Mensaje 415069)
Entra en el Panel de Control, Herramientas Administrativas, y ejecuta el ícono de Servicios. Busca el servicio Firebird Server y comprueba que no esté configurado para inicio Manual, en cuyo caso debes cambiarlo a Automático.
Saludos.

El icono de servicios deberás ejecutarlo con Botón derecho del ratón -> Ejecutar como y seleccionar Administrador
Saludos
salvica

Lepe 04-11-2011 11:07:54

Si usas FB 2.5 tienes un sql "Add user" que evita todo el lío de ms-dos, permisos y eso.


La franja horaria es GMT +2. Ahora son las 04:35:59.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi