Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-09-2015
Sapiem Sapiem is offline
Miembro
 
Registrado: abr 2007
Posts: 24
Poder: 0
Sapiem Va por buen camino
Exclamation Errores en ejecución al reinstalar Windows

Hola

Tengo un serio problema que no le he encontrado solución después de 1 semana de búsqueda.

Resulta que tengo una aplicación de hace más de 5 años de creada con Delphi 2006 sobre Windows 7. Esta aplicación la estoy en constante desarrollo y siempre ha funcionado ok.

Luego instalé Windows 8.1 y seguí su desarrollo con Delphi 2006 sin problemas. Luego migré a Windows 10 y, con algunos problemas de instalación, seguí con Delphi 2006 sin problemas.

Ahora decidí crear 2 particiones en mi PC, una con Windows 7 con Delphi 2006 para dedicarla solo a la programación, junto a Android Studio, y otra con Windows 10 para trabajo normal.

Para mi sorpresa todo es una locura en el código ya existtente. Por ejemplo :

La función FileExits devuelve true cuando un archivo no existe. Sin embargo ese mismo bloque de código lo pego un una aplicación nueva y funciona correctamente.

Los Streams me dan errores, códigos que funcionan sin problemas desde hace años.

Es como si lo que está escrito en el programa original está mal y cuando se pasa a una aplicación nueva, funciona ok.

Es una locura y no he podido hacer más nada en el código.

Agradecería mucho una ayuda

Un abrazo
Responder Con Cita
  #2  
Antiguo 27-09-2015
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Probáblemente tu proyecto original esté importando mal la API de Windows. Es extraño, yo trabajo con Win10 y los proyectos funcionan bien si los continúo en en otros PCs con WinXP o Win7.

Prueba a crear un proyecto nuevo y sobre él cambias el formulario principal por el de tu vieja App y luego añades todas las Units que tenga.


Saludos.
Responder Con Cita
  #3  
Antiguo 27-09-2015
Sapiem Sapiem is offline
Miembro
 
Registrado: abr 2007
Posts: 24
Poder: 0
Sapiem Va por buen camino
Cita:
Empezado por escafandra Ver Mensaje
Probáblemente tu proyecto original esté importando mal la API de Windows. Es extraño, yo trabajo con Win10 y los proyectos funcionan bien si los continúo en en otros PCs con WinXP o Win7.

Prueba a crear un proyecto nuevo y sobre él cambias el formulario principal por el de tu vieja App y luego añades todas las Units que tenga.


Saludos.
Ok, son muchas las units, pero intentaré hacerlo, no queda otra. Realmente no se qué pueda estar pasando.

Gracias
Responder Con Cita
  #4  
Antiguo 28-09-2015
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.272
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Sapiem Ver Mensaje
La función FileExits devuelve true cuando un archivo no existe. Sin embargo ese mismo bloque de código lo pego un una aplicación nueva y funciona correctamente.
Realmente esto es bastante extraño...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 28-09-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.039
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
A ver el código...
Responder Con Cita
  #6  
Antiguo 29-09-2015
Sapiem Sapiem is offline
Miembro
 
Registrado: abr 2007
Posts: 24
Poder: 0
Sapiem Va por buen camino
Question

Cita:
Empezado por Casimiro Notevi Ver Mensaje
A ver el código...
Esta es la parte del FileExists:

Código Delphi [-]
  if not FileExists('sqlite3.dll') then
    if not CrearDLL('xSQLite3') then
      begin
        ShowMessage('Imposible crear archivos necesarios para el correcto funcionamiento del sistema');
        Halt;
      end;

Esta es otra parte de Streams:

Código Delphi [-]

function CrearDLL(const aResourceName: String): boolean;
   var
      ms: TMemoryStream;
      rs: TResourceStream;
   begin
      ms := TMemoryStream.Create;
      try
         rs := TResourceStream.Create(HInstance, aResourceName, RT_RCDATA);
         try
           ms.CopyFrom(rs, 0);
           ms.Position := 0;
           ms.SaveToFile('sqlite3.dll');
           Result := True;
         finally
           rs.Free;
         end;
      finally
        ms.Free;
      end;
   end;

Como verán, trato de verificar que sqlite3.dll existe en la carpeta de la app, de lo contrario, la creo a partir de un resource. Todo esto funciona perfecto desde hace años, excepto después de la reinstalación del Windows y por supuesto del Delphi 2006. Aunque le ponga la dirección completa a la verificación del sqlite3.dll, sigue dando que existe y realmente no existe pues yo la elimino manualmente.

Gracias por toda ayuda....

Última edición por Neftali [Germán.Estévez] fecha: 08-10-2015 a las 08:33:42. Razón: Añadir etiquetas
Responder Con Cita
  #7  
Antiguo 29-09-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Sapien.

Por favor, cuando incluyas código, usa las etiquetas de este modo para darle mas legibilidad :




Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #8  
Antiguo 07-10-2015
Sapiem Sapiem is offline
Miembro
 
Registrado: abr 2007
Posts: 24
Poder: 0
Sapiem Va por buen camino
Desinstalé el Zeoslib 7.1.4 y puse la anterior 7.0.0 y al menos funciona ok, pero pasa a paso en debug no funciona el FileExists y sin embargo si funciona ejecutandose completo. Es algún problema del IDE.

Sigo sin entender..
Responder Con Cita
  #9  
Antiguo 07-10-2015
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Comprueba la ruta donde guardas y donde debería estar sqlite3.dll. Puede no coincidir el path en ejecución con el path desde el debugger.

Saludos.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Instalar windows 7 en modo a prueba de errores Tcmn Trucos 3 24-07-2014 21:46:15
Errores al ejecutar Delphi 7 en Windows vista OscarBravo Varios 4 21-01-2009 14:50:54
Tratamiento de errores entorno al API de Windows dec Windows 28 05-06-2007 04:31:32
Siguen Errores de CORBA con Windows ME zuriel_zrf Providers 0 11-08-2004 08:35:34
Errores de ejecucion silviodp Varios 3 29-01-2004 22:26:38


La franja horaria es GMT +2. Ahora son las 10:28:18.


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
Copyright 1996-2007 Club Delphi