solucionar error de excepcion a la hora de ejecucion
#1
Escrito 14 junio 2011 - 07:47
1.- Por ejemplo mi odbc se encuentra con el path: c:/mchazaro/holalola.mdb, por tal motivo de manera local corre mi aplicacion.
2.- Posteriormente, cuando esta en otra unidad compartida (red) ya me genera el siguiente error: EBDEngineError, asimismo la aplicacion no me abre me bota y de manera local bien.
Mi punto de vista es cuando genero en red el odbc, la ruta se cambia a donde esta mi aplicacion por eso me marca ese error...
¿Como puedo solucionar este error EBDengineError?
Podria hacer lo siguiente:
on EBDEngineError do
Except
TQUERY1.ACTIVE:=TRUE;
TQUERY1.OPEN;
end;
o ¿Como seria el codigo por ejemplo de poner mi aplicacion ya ke no me llegara a generar errores solo con poner o manejar excepciones y en que parte de mi codigo se pondria?
gracias
#2
Escrito 14 junio 2011 - 08:03
En tu ODBC debes de indicar la ruta correcta ya sea para conexión local o remota.
Para el manejo de esa excepción puedes hacer lo siguiente:
Try // bloque de codigo Except on E: EBDEngineError do //bloque de codigo end;
Si quieres manejar el evento OnException de manera global en tu aplicación puedes usar el componente ApplicationEvents e interceptar dicho evento.
#3
Escrito 14 junio 2011 - 08:07
#4
Escrito 14 junio 2011 - 09:20
Saludos.
En tu ODBC debes de indicar la ruta correcta ya sea para conexión local o remota.
Para el manejo de esa excepción puedes hacer lo siguiente:
delphi
Try // bloque de codigo Except on E: EBDEngineError do //bloque de codigo end;
ya lo se eso
Si quieres manejar el evento OnException de manera global en tu aplicación puedes usar el componente ApplicationEvents e interceptar dicho evento.
pero como activo el evento de onexception de applicationevents1
#5
Escrito 14 junio 2011 - 10:30
procedure TForm3.FormCreate(Sender: TObject; E: Exception); begin try query1.SQL.Text:='SELECT * FROM BLIBROS'; QUERY1.Open; except on E:EDBEngineError do BEGIN QUERY1.DatabaseName:='FCH'; QUERY1.ACTIVE:=TRUE; end; end; end; END.[/Delphi] lamentablemente no fue un exito de manera remotamente en cuanto a remotamente ya esta la base de datos mediante el ODBC y la aplicacion pero sigue generando el error a que se deberá? 8o|
#6
Escrito 14 junio 2011 - 10:32
Saludos.
#7
Escrito 14 junio 2011 - 11:14
Hola, cuando te conectas de manera remota, ¿estas segura que estás apuntando correctamente la BD?, ya que cuando es remoto no puedes colocar "C:\la base" así por así, cuando debería ser "//MAQUINA/la base", ¿se entiende?.
Saludos.
asi tengo checate mi ruta //server5/biblioteca asi lo tengo y de ahi el nombre de mi archivo
#8
Escrito 14 junio 2011 - 11:16
Saludos.
#9
Escrito 14 junio 2011 - 11:20
#10
Escrito 20 junio 2011 - 09:35
demanera igual en la forma de compilado mas no de diseño puesto en redesta igual gracias sigue generando el mismo error
#11
Escrito 23 junio 2011 - 08:15
Perfecto, la ejecutas en modo de diseño o ya compilado, para que se funcione debe estar compilado, nos comentas los resultados.
Saludos.
1.- sigue igual por defecto cuando le doy copy-paste a otra maquina es cuando ya no pasa
2.- marca error de EDBEngine Error insuficient memory
3.- ¿Sera algo del DBE ADMIN?
4.- ¿Podria ser algo un valor o un dato que no deja ke tu aplicacion se abra? graxias
#12
Escrito 23 junio 2011 - 08:27
#13
Escrito 23 junio 2011 - 11:49
DBEngineError Insuficient MemoryCual es el error exacto que te sale, podrias colocarlo?
#14
Escrito 23 junio 2011 - 12:36
El error que describes da por muy pocas cosas, una de ella que cargues muchos registros en memoria-
#15
Escrito 24 junio 2011 - 08:40
ok, y tratando de seguir entendiendote disculpame tanta preguntas, ese error te da siempre? cuando abres que pantalla?.
El error que describes da por muy pocas cosas, una de ella que cargues muchos registros en memoria-
el .exe el menu principal, yo creo ke es por la memoria del buffer que tiene muy poca en el parte del ini de dbe admin namas me falta checar eso
#16
Escrito 24 junio 2011 - 09:06
Si vas a usar ODBC para conectarte a una BD de MS-Access, mi recomendación sería que utilices los componentes ADO (DBGo); ya que los mismos son "perfectos" para SQL Server y/o MS-Access.
P.D. Como recomendación personal, creo que debes de mejorar tu escritura en cuanto a como postear en el foro; recuerda que no es un CHAT, es un foro donde no se esta en línea.
#17
Escrito 24 junio 2011 - 10:44
Saludos.
Si vas a usar ODBC para conectarte a una BD de MS-Access, mi recomendación sería que utilices los componentes ADO (DBGo); ya que los mismos son "perfectos" para SQL Server y/o MS-Access.
P.D. Como recomendación personal, creo que debes de mejorar tu escritura en cuanto a como postear en el foro; recuerda que no es un CHAT, es un foro donde no se esta en línea.
1.- A la hora de ejecutar mi aplicacion posteriormente sucede lo siguiente:
(O) a la hora que esta abriendo en tiempo de ejecucion que hace la accion de abrir mi aplicacion
(0) Marca posteriormente error de windows el tipico
(0) y Se cierra y ya deja de funcionar
#18
Escrito 24 junio 2011 - 06:54
Que componentes estas usando ADO's ? ADOConnection, ADOQuery etc.
la ruta de la base de datos la guardas en tiempo de diseño o la cargas en tiempo de ejecución? si lo haces en tiempo de diseño revisa bien la ruta con el tipo de caracter correcto "\" no el otro "/".
ejemplo: "\\Server\Bases\Inventarios\DBInventarios.mdb"
si lo haces en tiempo de ejecución, revisa que tu conexión no se quede activa o abierta al momento de compilar, porque si se queda de esta forma, buscará primero la ruta que utilizas en tiempo de diseño y ese puede ser el error.
revisa el tipo de componentes que utilizas quizás estas ocupando un Clientdataset, para que este componete se pueda usar en otra computadora sin delphi es necesario que cuente con la libreria "midas.dll". en lo particular me gusta usar este componente, y cuando ejecuto mi aplicación en una computadora que no tiene la dll me sale el error "tipico" de windows, bueno el mensaje de windows que me dice que la aplicación se cerrará.
espero te sirva de algo mi comentario.
#19
Escrito 25 junio 2011 - 10:37
configuration-->system-->INIT-->SHAREDMEMSIZE = 8192
#20
Escrito 27 junio 2011 - 09:53
Hola a todo el foro.
Que componentes estas usando ADO's ? ADOConnection, ADOQuery etc.
la ruta de la base de datos la guardas en tiempo de diseño o la cargas en tiempo de ejecución? si lo haces en tiempo de diseño revisa bien la ruta con el tipo de caracter correcto "\" no el otro "/".
ejemplo: "\\Server\Bases\Inventarios\DBInventarios.mdb"
si lo haces en tiempo de ejecución, revisa que tu conexión no se quede activa o abierta al momento de compilar, porque si se queda de esta forma, buscará primero la ruta que utilizas en tiempo de diseño y ese puede ser el error.
revisa el tipo de componentes que utilizas quizás estas ocupando un Clientdataset, para que este componete se pueda usar en otra computadora sin delphi es necesario que cuente con la libreria "midas.dll". en lo particular me gusta usar este componente, y cuando ejecuto mi aplicación en una computadora que no tiene la dll me sale el error "tipico" de windows, bueno el mensaje de windows que me dice que la aplicación se cerrará.
espero te sirva de algo mi comentario.
no estoy utilizando ado, only tquery y datasource gracias