Ver Mensaje Individual
  #1  
Antiguo 17-03-2009
elcigarra elcigarra is offline
Miembro
 
Registrado: may 2005
Posts: 269
Reputación: 20
elcigarra Va por buen camino
LoadResString misterioso

estimados, hace días que estoy dando palos de ciego porque esto está más allá del techo de mis conocimientos.

Estoy desarrollando una aplicación que realiza simulaciones de eventos estadísticos. El tema es que se generan cientos de miles de veces un montón de operaciones y otras miles (aunque no tantas), se hacen cálculos y se grafica todo.

Hace semanas llevo tratando de lograr una versión estable para lo cual he revisado hasta el cansancio poner los arrays a nil, utilizar "for low(array) to..." en vez de números, liberar la memoria de objetos creados, uno por uno los procedimientos, etc. hasta llevar los errores tipo "Invalid pointer operation" y "access violation" casi a cero... pero no cero. Hay dos problemas que no puedo resolver ya que se dan aleatoriamente durante la simulación:

Errores a) En algunos casos me da "invalid pointer operation" en lineas de tipo:
Código Delphi [-]
miArray := nil;
, también probé con
Código Delphi [-]
if assigned(miArray) then
       miArray := nil;
pero es lo mismo, a veces los da igual.

Errores b) A veces da errores "access violation..." pero no sé donde porque salta afuera del código y no lo puedo rearrancar con F8 porque sigue dando el mismo error.

Este último tipo de errores es interesante porque me abre la ventana de CPU con ese hilo y me marca una linea del procedimiento LoadResString. Me llama la atención ya que yo no uso la unidad System donde supuestamente estaría ese procedimiento, aunque supongo que algún componente lo tendrá.

Solo dos datos más por si a Uds les indica algo (a mi no...)
*) a veces me da errores similares cuando el programa intenta cambiar la propiedad Caption de unos labels específicos... algo como:
Código Delphi [-]
Label1.Caption := FloatToStrF(var1,ffFixed,11,5)

*) Arriba de LoadResString hay funciones que tienen que ver con los caracteres:
utf8tounicode
utf8encode
utf8decode
ansitoutf8... etc
la verdad no utilizo nada de esto y además mis Fonts son todas DEFAULT-CHARSET y Ms Sans Serif

Disculpen mi ignorancia pero estoy en cero y no se ni donde buscar.
Responder Con Cita