Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Ejecutable envía problema en windows xp (https://www.clubdelphi.com/foros/showthread.php?t=75052)

novato_erick 27-07-2011 01:45:48

Ejecutable envía problema en windows xp
 
Gracias por atender las solicitudes anteriores en este foro:

Agradezco a oscarac y ecfilsa por siempre responder a mis dudas.

Esta vez es algo diferente, después de haber realizado las modificaciones y ejecutado en mi pc de Desarrollo la aplicación "Creo" que está lista para ser instalada en otra maquina el cual no tenga instalado el Delphi (Terminal Cliente).

Mi aplicación consiste en un sistema Cliente Servidor utilizo los componente estandar de delphi, el unico es fastReport(este no) ver 4.10.18 tambien utilizo Firebird 2.5 y para conectar un dbExprees:

en el componente dbe de conexión tengo esto: 192.168.10.1:c:\bd.fdb
probé utilizando el nombre del servidor: desarrollo:c:\db.fdb

no tengo ningun problema desde mi maquina de desarrollo compila muy bien

pero al llevarme el exe al la otra terminal adivinen: "windows a detectado un problema y la aplicacion debe cerrarse" y la frase muy comun de windows: "desea enviar" si o no.

los dll por lo general copio en sistem32 mida.dll, fbclient.dll, dbxfb.dll.

Alguien tiene alguna idea de como resolver este problema?


Saludos a todos

Caral 27-07-2011 01:50:24

Hola
Es curioso, no deberia de dar ningun problema si en un ordenador funciona en el otro deberia igual.
Si los dll estan en sistem32 y la direccion IP es la correcta deberia de funcionar.
Ahora:
Si la direccion esta en el codigo tal vez por ahi este el problema.
Yo usaria un INI.
Saludos

novato_erick 27-07-2011 01:58:11

La conexión no esta en el código para nada desde las propiedades del mismo componente dbexpress asigno la ruta.


que sugerencia me harias con respecto al *.ini


Gracias...

Caral 27-07-2011 02:04:22

Hola
Si la conexion esta en el componente, esta DENTRO del codigo, osea del EXE.
No conozco los componentes DBExpress pero me imagino que usara la direccion por medio de un String, como otros, si es asi, sigo insistiendo, la mejor manera es un archivo INI.
Revisa el archivo adjunto, es un INI.
Saludos

novato_erick 27-07-2011 16:52:30

caral

disculpa por no haber respondido el día de ayer ya que me quede dormido tratando de resolver el problema de mi ejecutable.

Lo que queda es crear una unidad para realizar el archivo ini eso es lo que sugieren. Estoy equivocado?

favor ilumina....

Saludos

Caral 27-07-2011 17:05:37

Hola
Si me explicas como haces la conexion con la BD (ya que no conozco los componentes ) podre guiarte con el INI.
Saludos

novato_erick 27-07-2011 17:30:20

simplemente uso el componente TsqlConnection de DBX

propiedades: connected := True
connectionName fbConnection
driver firebird
database: servertxt:c:\dbascii.fdb
pasword: micontraseña
username: sysdba


Creo que es lo que necesita


Saludos y gracias

maeyanes 27-07-2011 18:38:13

Hola...

No se trata solo de copiar las dll dentro del directorio System. En el caso de Firebird tienes que instalar el cliente. Para esto, ejecuta el instalador de Firebird y cuando te muestre las opciones para instalar, selecciona que solo se instale el cliente. Con esto deberías resolver tu problema.



Saludos...

novato_erick 27-07-2011 18:43:09

ya lo realice, instale el ejecutable de la versión 2.5 de firebird. y nada...

Aun no he podido resolver el problema..

Gracias..

maeyanes 27-07-2011 18:53:19

Ah!

Las otras dll también las tienes que registrar:

Código:

regsvr32 nombredll.dll


Saludos...

novato_erick 27-07-2011 19:06:54

no entiendo

Código Delphi [-]
regsvr32 nombredll.dll

maeyanes 27-07-2011 19:10:50

Hola...

Desde una ventana de línea de comandos, has lo siguiente:

Código:

cd c:\Windows\System32 [Enter] (O la ruta donde pusiste las DLL que mencionaste)

regsvr32 midas.dll [Enter]

regsvr32 dbxfb.dll [Enter]

Con esto estás registrando las dll's en windows y tu aplicación ya debería ejecutarse sin problemas. A menos que el problema esté en otro lado, claro está...



Saludos...

novato_erick 27-07-2011 19:19:54

---------------------------
RegSvr32
---------------------------
Se descargó dbxfb.dll, pero no se encontró el punto de entrada DllRegisterServer.

No se puede registrar este archivo.
---------------------------
Aceptar
---------------------------

El midas.dll se registro correctamente

el dbxfb.dll mostro el mensaje anterior.



Saludos;

maeyanes 27-07-2011 19:21:33

Hola...

Pues dbxfb.dll no se puede registrar, según el mensaje no tiene un punto de entrada para registrarse. De todas maneras, trata de ejecutar de nuevo tu aplicación.


Saludos...

novato_erick 27-07-2011 19:25:48

Gracias por tus aportes ante mano.

Ejecute mi aplicación y nada...

sigue mandando el mismo error de error de programa.

Es Extraño que en mis tres equipo de desarrollo no tengamos problema al ejecutarlo.. todo esta en en la terminal que no tiene dephi.

vere que sigo haciendo, si encuentro la solución. mientras tanto recibiré mas sugerencias...

Saludos

Casimiro Notevi 27-07-2011 19:26:16

Me parece que estás intentado resolver algo dando "palos de ciego" porque todavía no sabes realmente cual es el problema que tienes.

No das mucha información, así que para empezar, algo simple, ¿has instalado el cliente de firebird?

maeyanes 27-07-2011 19:32:16

Hola...

Casimiro, según comentó más arriba, ya instaló el cliente de Firebird en la PC.

Ahora, si ya registró la dll de midas y sigue con el mismo problema, podría ser que aún le falten algunas dll's por instalar/registrar.

novato_erick busca en el visor de eventos de Windows XP los errores que se producen al ejecutar tu aplicación, ahí podrías encontrar más información sobre que te está produciendo el error.


Saludos...

novato_erick 27-07-2011 19:34:11

Gracias Casimiro esta bien el jalon de orejas...

Empiezo de nuevo:

Esta instalado el Cliente de firebird 2.5 en la maquina que deseo ejecutar mi apliación.

Instale por si acaso en el c:\windows\system32\dbxfb.dll y midas.dll (Esto porque antes una microaplicacion de prueba instalada anteriormente en una terminal sin delphi me recomendaron que hiciera y funciono).

Mi aplicación llama a la base de datos usando un componente DBX de la siguiente manera:

driver: firebird
DataBase: 192.168.17.2:C:\BDASCII.FDB
password: mipassword
username: sysdba

Como dije anteriormente: la aplicacion corre en mis maquina de desarrollo pero no he podido lograr que corra en una sin delphi.

Claro la maquina sin delphi, ya esta dentro del dominio de la red del servidor windows server8 y su respectivo ip.


Saludos

novato_erick 27-07-2011 19:48:06

Envia este error:


Tipo de suceso: Error
Origen del suceso: Application Error
Categoría del suceso: Ninguno
Id. suceso: 1000
Fecha: 27/07/2011
Hora: 01:15:07 p.m.
Usuario: No disponible
Equipo: HOGAR
Descripción:
Aplicación con errores: inventarios.exe, versión: 0.0.0.690, módulo con error: kernel32.dll, versión 5.1.2600.3119, dirección de error 0x00012a5b.

Para obtener más información, vea el Centro de ayuda y soporte técnico en http://go.microsoft.com/fwlink/events.asp.
Datos:
0000: 41 70 70 6c 69 63 61 74 Applicat
0008: 69 6f 6e 20 46 61 69 6c ion Fail
0010: 75 72 65 20 20 69 6e 76 ure inv
0018: 65 6e 74 61 72 69 6f 73 entarios
0020: 2e 65 78 65 20 30 2e 30 .exe 0.0
0028: 2e 30 2e 36 39 30 20 69 .0.690 i
0030: 6e 20 6b 65 72 6e 65 6c n kernel
0038: 33 32 2e 64 6c 6c 20 35 32.dll 5
0040: 2e 31 2e 32 36 30 30 2e .1.2600.
0048: 33 31 31 39 20 61 74 20 3119 at
0050: 6f 66 66 73 65 74 20 30 offset 0
0058: 30 30 31 32 61 35 62 0d 0012a5b.
0060: 0a .

Chris 27-07-2011 19:56:29

Primero, no es necesario ningún proceso de instalación del cliente de Firebird. De hecho, ni siquiera existe tal tipo de instalación. El cliente de Firebird es simplemente un biblioteca de carga dinámica. Ésta puede estar en la misma ruta que tu *.exe o bien en alguna ruta del sistema como: C:\Windows; C:\Windows\System32; etc. Lo recomendado es que utilices una copia de la DLL que resida junto a tu ejecutable.

Por otro lado, si dices que en los equipos de desarrollo el programa no presenta ningún problema es porque seguro te está faltando instalar y/o registrar algo en el equipo cliente. Sin saber mucho de dbExpress supongo que tiene que ver con él. Fíjate en la siguiente línea de la configuración:
Cita:

driver firebird
El sistema requiere que Firebird sea algo configurado y entendible para dbExpress. Talvez eso deba ser lo que te está faltando. No solo con copiar DLLs se puede considerar como instalado a un componente de Software.

Saludos,
Chris


La franja horaria es GMT +2. Ahora son las 08:06:51.

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