Ir al contenido


Foto

Error catastrofico en otra maquina


  • Por favor identifícate para responder
5 respuestas en este tema

#1 giulichajari

giulichajari

    Advanced Member

  • Miembros
  • PipPipPip
  • 477 mensajes

Escrito 14 mayo 2021 - 11:51

Cuando llevo mi aplicacion de escritorio hecha en Delphi a otra maquina obtengo Error catastrofico.

La base de datos Mysql la tengo en un vps en la nube.. Igualmente ya esta todo configurado para acceder remotamente.

Lo que ocurre es que la aplicacion abre. Pero no se ven los datos en las tablas y obviamente no puedo operar. No tengo muchos registros en las tablas.
Agradezco su ayuda

Enviado desde mi SNE-LX3 mediante Tapatalk
  • 0

#2 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 15 mayo 2021 - 09:53

Hola.

 

Este error normalmente es por falta de alguna biblioteca, es difícil saber sin conocer mas detalle.

 

Saludos


  • 0

#3 giulichajari

giulichajari

    Advanced Member

  • Miembros
  • PipPipPip
  • 477 mensajes

Escrito 16 mayo 2021 - 06:56

Tengo este codigo en el evnto oncreate del datamodule, es decir me conecto y activo algunos dataset. Igual copie la libreria libmysql.dll y dbxmys.dll en la carpeta system32 de windows pero igual da el problema. La excepcion no me da mucha informacion 


delphi
  1. procedure TDataModule1.DataModuleCreate(Sender: TObject);
  2. var
  3. admin: TIniFile;
  4. i, x: integer;
  5. rutadatos, nombredir: String;
  6. fechanueva, fecha: TDate;
  7. fechas: string;
  8. begin
  9. admin := TIniFile.Create(ExtractFilePath(Application.ExeName) + 'CONFIG.ini');
  10.  
  11. with DataModule1.CONEXION do
  12. begin
  13. Close;
  14. DriverName := 'MySQL';
  15.  
  16. Params.Values['HostName'] := admin.ReadString('admin', 'IP', '');
  17. Params.Values['DataBase'] := admin.ReadString('admin', 'bd', '');
  18. Params.Values['Port'] := admin.ReadString('admin', 'Port', '');
  19. Params.Values['User_Name'] := admin.ReadString('admin', 'User', '');
  20. Params.Values['Password'] := admin.ReadString('admin', 'Pass', '');
  21. end;
  22.  
  23. try
  24. CONEXION.Open;
  25.  
  26.  
  27.  
  28. DataModule1.cdsproductos.Active:=True;
  29. DataModule1.cdsclientes.Active:=True;
  30. DataModule1.cdslistas.Active:=True;
  31. DataModule1.cdsreparto.Active:=True;
  32. DataModule1.cdsvendedor.Active:=True;
  33. DataModule1.cdscp.Active:=True;
  34.  
  35.  
  36. except
  37. on E: Exception do
  38.  
  39. showMessage(E.Message);
  40.  
  41. end;
  42.  
  43.  
  44. end;

 

Hola.

 

Este error normalmente es por falta de alguna biblioteca, es difícil saber sin conocer mas detalle.

 

Saludos


  • 0

#4 giulichajari

giulichajari

    Advanced Member

  • Miembros
  • PipPipPip
  • 477 mensajes

Escrito 17 mayo 2021 - 10:26

Hola.

Este error normalmente es por falta de alguna biblioteca, es difícil saber sin conocer mas detalle.

Saludos

Hola amigo Ego. Aparentemente el problema es la version de la libreria dbxmys. Dll dado que hay distintas versiones segun la arquitectura y demas.
Igual aun no abre la aplicacion. Pero tambien influye la version de MySql del servidor y la de la libreria deben ser compatibles.
El caso es que me comunique con el servidor VPS q contrate y tienen MariaDB. Es una bifurcacion de MySQL.. Es decir es la continuacion y va por la version 10.5.
El driver de los componentes DBX: Hasta que version soporta de mysql.. Creo que hasta la 5.x.

Lo ultimo que me queda por probar es por ejemplo.. Instalar una version vieja de xampp que por ende tiene una version vieja de mysql y probar si funciona.

Por otro lado existe alguna manera de compilar mi aplicacion incluyendo la libreria para no tener que descargarla en la carpeta system32?

Enviado desde mi SNE-LX3 mediante Tapatalk
  • 0

#5 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 18 mayo 2021 - 06:48

 

... system32 de windows pero igual da el problema....

 

Asumo que tu aplicación es de 32 bits

 

Una pregunta....

 

Tu Windows es 64 Bits?

 

Si es así, entonces tu problema se debe resolver colocando las DLL's en SysWOW64, en sistemas de 64 bits las bibliotecas 32 bits van en SysWOW64 y las de 64 bits en System32, Microsoft no quiso cambiar System32 por System64 :D

 

 

Saludos


  • 1

#6 giulichajari

giulichajari

    Advanced Member

  • Miembros
  • PipPipPip
  • 477 mensajes

Escrito 26 mayo 2021 - 01:56

Asumo que tu aplicación es de 32 bits

Una pregunta....

Tu Windows es 64 Bits?

Si es así, entonces tu problema se debe resolver colocando las DLL's en SysWOW64, en sistemas de 64 bits las bibliotecas 32 bits van en SysWOW64 y las de 64 bits en System32, Microsoft no quiso cambiar System32 por System64 :D


Saludos

Si sabia de eso.. Igual ya lo intente y sigo con el problema.
La aplicacion logre abrirla muchas veces en local.
El problema vino al conectar a una base de datos en el VPS por eso pienso es la libreria que no concuerda con MariaDB.
Y me temo pensar que DBExpress no soporta MariaDB. Esta bien que no es algo sencillo de hacer pero voy a intentar conectarme en local nuevamente. Si conecta puede ser el tema de la libreria..

Gracias amigo Ego

Enviado desde mi SNE-LX3 mediante Tapatalk
  • 0




IP.Board spam blocked by CleanTalk.