Ir al contenido


Foto

problemas con ntdll.dll


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

#1 FELIX

FELIX

    Advanced Member

  • Miembros
  • PipPipPip
  • 123 mensajes

Escrito 15 mayo 2012 - 09:46

Saludos..

Me podrian ayudar a encontrar una solucion para esta falla
[c]"Access violation at address 7C921D8F in module 'ntdll.dll'. Read of address 0E4DEBF8."[/c]
uso delphi 7,  el problema pasa algunas veces cuando quiero compilar el programa, cuando sale este error tengo que cerrar delphi, borrar todos los .dcu y ejecutarlo nuevamente.

He encontrado varias respuestas que indican que debo descargar un programa o muestran codigos para solucionarlo pero los resultados han sido iguales, No se que mas debo hacer. 
Gracias por el iempo que me dedican para solucionar mis invonvenientes.
  • 0

#2 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.107 mensajes
  • LocationMadrid - España

Escrito 15 mayo 2012 - 10:18

¿Que S.O. usas?.

Esa dll es parte del S.O. y es difícil que falle a no ser que tengas una modificada.  Otra causa de error es que trates de importar una función exportada en ntdll.dll y que no lo estés haciendo bién (tú o código de un tercero).

Revisa en qué parte del código se produce el error.


Saludos.
  • 0

#3 FELIX

FELIX

    Advanced Member

  • Miembros
  • PipPipPip
  • 123 mensajes

Escrito 15 mayo 2012 - 11:16

Gracias por responder tan pronto Escafandra; te comento, uso windows xp, pero ese error solo ocurre cuando ejecuto esa aplicacion; cuando compilo delphi empieza hacer todo el proceso y cuando llega  a la parte del linking se daña.

¿como prodria hacer el seguimiento si se daña en alguna parte de la compilacion?
  • 0

#4 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.107 mensajes
  • LocationMadrid - España

Escrito 15 mayo 2012 - 02:40

..ese error solo ocurre cuando ejecuto esa aplicacion...


¿Cuando ejecutas una APP determinada o cuando la compilas?
Asumo que es cuando compilas un determinado proyecto...

Mira a ver si usas código que importe funciones de ntdll.dll. Si una función importada es errónea el linker falla aunque no debería "colgar" delphi... Si el código conflictivo está en un componente la cosa cambia pues los constructores de los componentes y algún procedimiento o función más se ejecutan en fase de diseño. Un error en la llamada a ntdll puede acumular un fallo que cuelgue delphi.

Es importante que detectes cuando se usa ntdll.dll desde tu proyecto y encontrarás el error. Ten en cuenta que no es muy habitual importar directamente funciones de esa dll desde delphi.

Otro detalle que te comenté es si tu ntdll es original o no. Esa dll nunca debería dejar de ser la original, en caso contrario yo me mosquearía mucho... ^o|


Saludos.
  • 0

#5 FELIX

FELIX

    Advanced Member

  • Miembros
  • PipPipPip
  • 123 mensajes

Escrito 15 mayo 2012 - 02:55

La dll es la original nunca la he reemplazado, voy a mirar el codigo muy bien a ver si encuentro una funcion que llame o utilize ntdll.dll. Te estare comentando cualquier avance o solucion respecto a este tema. Muchas gracias por tu tiempo... (y)

  • 0

#6 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 17 mayo 2012 - 05:55

La dll es la original nunca la he reemplazado, voy a mirar el codigo muy bien a ver si encuentro una funcion que llame o utilize ntdll.dll. Te estare comentando cualquier avance o solucion respecto a este tema. Muchas gracias por tu tiempo... (y)


Yo ayer me encontré ese mismo error en un cliente cuando en su ordenador intenta imprimir un documento en apaisado.

Dudo mucho de que vayas a encontrar el código que ocasiona el error, puesto que se trata de las llamadas al sistema que hacen la VCL (o en mi caso FastReports).

Tienes algún conflicto con la configuración de Windows XP, que ocasiona que tu aplicación no se ejecute bien en ese equipo.

Puedes integrar madExcept en tu aplicación (es gratuito) para que te indique la línea de tu código que provoca las llamadas al sistema que acaban causando el error, y así intentar sortearlo, pero me temo que para una solución definitiva haya que reinstalar Windows en el equipo (al menos eso es lo que le he dicho a mi cliente que tiene que hacer para evitar ese conflicto con el sistema operativo).

http://madshi.net/ma...Description.htm

Saludos
  • 0

#7 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 19 mayo 2012 - 12:05

Parece un problema con tu windows y no con tu proyecto, aunque lo que dice escafandra podría ser, pero en tiempo de compilación me extraña que diese este error con un windows en condiciones.

Prueba con madexcept si quieres, pero si es tu windows no te servirá de nada (madExcept es muy recomendable de todas formas, es una pasada).

Yo probaría a compilar desde una maquina virtual a ver, si no da error, reinstala tu windows o mira a ver si tienes puntos de recuperación en el panel de control y mira a ver si viajando atrás en el tiempo todo va, algunas veces es culpa de un "parche" de microsoft que arregla A y rompe B.

También valdría probar a ver si tienes actualizaciones del sistema pendientes, igual una de ellas arregla lo que otro anterior estropeó, no sería la primera vez.
  • 0

#8 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 19 mayo 2012 - 04:18

Otra vez me he encontrado este error en otro equipo. Ahora no es en la impresión sino que aparece aleatoriamente durante un proceso de importación de datos.

MadExcept no parece poder darme información para solventar el problema. Algunas veces indica que no se ha podido generar el informe, y en otras informa de que se ha agotado la memoria (cuando el equipo tiene 2Gb de RAM la inmensa mayoría de la cual está libre según el Inspector de Tareas). A mi me parece un problema del sistema operativo.

Así que he vuelto a aplicar el remedio de la glosopeda (muerto el perro, se acabó la rabia) y les he dicho que tienen que formatear y reinstalar Windows en el equipo.
  • 0

#9 FELIX

FELIX

    Advanced Member

  • Miembros
  • PipPipPip
  • 123 mensajes

Escrito 12 junio 2012 - 10:44

Marc, Sergio gracias por su interes en resolver mi problema, les cuento tengo maquina virtual con xp, otro equipo donde reinstale xp,intetente con la aplicacion que en un principio recomendo Marc pero al ejecutar el proyecto sigue saliendo el mismo error.

8o| 8o| 8o| 8o| 8o|, no se que mas hacer, probe diferentes opciones pero ninguna sin resultado hasta ahora.

Saludos.
  • 0

#10 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.107 mensajes
  • LocationMadrid - España

Escrito 13 junio 2012 - 05:26

...tengo maquina virtual con xp, otro equipo donde reinstale xp,intetente...
...pero al ejecutar el proyecto sigue saliendo el mismo error.


Llegado a este punto habrá que pensar que la causa del error está mas en el código que en el S.O. Quizás un componente de terceros sea el causante. Yo realizaría pruebas con un proyecto limpio añadiendo componentes para tratar de reproducir el error.  Si el erro está en bug de un componente ajeno a la VCL la solución será dejar de usarlo si no es posible acceder al código fuente.

En alguna ocasión he solucionado problemas "extraños" creando un nuevo proyecto y trasladando las unidades sin mas cambios.


Saludos.
  • 0

#11 FELIX

FELIX

    Advanced Member

  • Miembros
  • PipPipPip
  • 123 mensajes

Escrito 13 junio 2012 - 07:27

Saludos

El aplicativo es un poco grande tomara varios dias hacerlo en un nuevo proyecto, pero peor es la diligencia que no se hace.
¡ manos a la obra !, les estare comentando los resultados. Gracias.


  • 0

#12 Marc

Marc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.484 mensajes
  • LocationMallorca

Escrito 14 junio 2012 - 02:07

Hola Felix.

Marc, Sergio gracias por su interes en resolver mi problema, les cuento tengo maquina virtual con xp, otro equipo donde reinstale xp,intetente con la aplicacion que en un principio recomendo Marc pero al ejecutar el proyecto sigue saliendo el mismo error.

8o| 8o| 8o| 8o| 8o|, no se que mas hacer, probe diferentes opciones pero ninguna sin resultado hasta ahora.

Saludos.


La librería MadExcept no es para solventar directamente el error, sino que es para que te informe de en que línea se produce y así poder corregirla.

¿ Ya has visto en qué líneas se produce el error ?, si nos indicas ese código Delphi y el informe MadExcept, quizás te podamos hacer alguna sugerencia para evitar el problema.

Saludos.
  • 0




IP.Board spam blocked by CleanTalk.