![]() |
Duda: EOSError (error code: 5)
Tengo una duda acerca de ese error: EOSError (5: access denied) al llamar alguna funcion de la API.
Mi duda, es si el acceso denegado se refiere a un fichero, a una dll, a un exe, a una direccion de memoria, o puede ser cualquiera de estas! Para tener una idea de cual puede ser el error, ya q el Delphi no me ayuda mucho :p Aqui teneis el error exacto que me suelta el Delphi (siempre en el mismo "proceso", pero no se en que momento de el :confused:): --------------------------- Debugger Exception Notification --------------------------- Project xDemo.exe raised exception class EOSError with message 'System Error. Code: 5. Acceso denegado'. --------------------------- Break Continue Help --------------------------- El programa usa el firebird 2.0 (embedded) y es multi-hilo. Mi primera sospecha era si el error lo daba el firebird al intentar escribir, pero he descartado esta opcion, pq los datos se guardan correctamente (aun y haber saltado el Error). Mi segunda sospecha es, si es un "acceso denegado" a la memoria. ¿Pq pienso eso? Pues pq el programa tiene unos cuantos hilos en funcionamiento q se llaman unos a otros y q alguno de estos intente leer datos reservados del otro. Pongamos que: Hilo 1 = programa principal Hilo 2 = objeto que guarda datos a la BD Pues Hilo 2 hace saltar un evento del Hilo 1, y este usa sus variables y sus cositas, el 95% de las veces funciona bien, pero no se por que motivo algunas veces salta ese error. Despues de saltar el error, esta claro que el Hilo 2 (que fue quien llamo al evento del Hilo 1) se queda "colgado" debido al error. Se que es un poco liada mi explicacion, si no se entiende lo intentare explicar otra vez... xD |
:confused: ¿Estas utilizando algún método para sincronizar ambos threads? ¿Synchronize? ¿TCriticalSection? ¿Mutex? etc ...
|
Solo en los momentos que tengo q actualizar objetos graficos uso el Synchronize.
Ara estoy revisando que no se me haya colado alguno por ahi, pero cuando me lo dejo me suelta que no puede "dibujar", asi es como detecto algunos de estos que me dejo... Es algo chapuzero hacerlo asi, pero.... xD Ahora haciendo pruebas he localizado el punto (el trozo de codigo que me genera el error)... ya estoy mas cerca de corregirlo, espero. Gracias por la sugerencia! P.D.: Voy a buscar informacion acerca de: TCriticalSection |
Tengo el mismo problema....
Si utilizas DevExpress ExpressQuantumGrid, el error proviene de un bug de dicho componente. Cita:
Más información en el siguiente enlace. http://coding.derkeiler.com/Archive/...3-10/4213.html |
| La franja horaria es GMT +2. Ahora son las 10:09:09. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi