Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-08-2014
Avatar de jafera
jafera jafera is offline
Miembro
 
Registrado: may 2007
Ubicación: Llagostera (Girona)
Posts: 582
Poder: 17
jafera Va por buen camino
Capturar excepcion al abrir carpeta no existente

Hola a todos.

Tengo una duda de como poder capturar un posible error que suceda si al intentar abrir una carpeta de un directorio esta no exista. El código ( sin la excepción), es este:

Código Delphi [-]
procedure TF_Camions.Button5Click(Sender: TObject);
var i:integer;
begin
        //try
        OpenPictDialCam.InitialDir:='C:\Camiones_1.0\Imagenes\Camiones\'+DBEdit1.Text;
        If OpenPictDialCam.Execute then
        begin
                i:=Fotos_C.RecordCount;
                Fotos_C.Append;
                i:=i+1;
                Fotos_CDESCRIPCIO.Value := 'Foto:'+IntToStr(i);
                Fotos_CFOTO.LoadFromFile(OpenPictDialCam.FileName);
                Fotos_C.Post;
                F_ModulDades.CamionsFOTO.Value:='S';
        end;

        TumbNC.Close;
        TumbNC.Open;
        If TumbNC.RecordCount = 0 then
        begin
                DBCtrlGrid1.Visible:=False;
        end
        else
        begin
                TumbNC.Last;
                DBCtrlGrid1.Visible:=True;
                If (TumbNC.RecordCount >= 1) and (TumbNC.RecordCount <= 10) then
                begin
                        DBCtrlGrid1.ColCount:=TumbNC.RecordCount;
                end
                else
                begin
                        DBCtrlGrid1.ColCount:=10;
                end;
        end;
        //except
                    //Mensaje
        //end;
end;

Lo que hago es asignar el InitialDir del Open picture a la carpeta de las imagenes más el valor del DBEdit1 que realmente es el nombre de la carpeta que contiene las imagenes de esta ficha, hasta aquí funciona bien y es muy rápido el entrar las imagenes a la tabla.

Hoy pensdando un poco he llegado a la conclusión de que si por casualidad la carpeta llamada no existe porque aun no se ha creado, donde ira a parar el InitialDir?

He probado con un try except y no lo acabo de ver claro ya que me pasa de largo.

Me gustaria que si no se encuentra la carpeta me diera un mensaje de "Carpeta inexistente" y poder abortar la operación

Gracias por vuestra ayuda

Saludos calurosos veraniegos

Josep
Responder Con Cita
  #2  
Antiguo 14-08-2014
engranaje engranaje is offline
Miembro
 
Registrado: may 2011
Posts: 163
Poder: 13
engranaje Va por buen camino
No te valdría la pena comprobar primero si la ruta exite haciendo algo como esto?
Código Delphi [-]
if DirectoryExists(OpenPictDialCam.InitialDir) then
  ...
else
  ShowMessage(OpenPictDialCam.InitialDir+' no existe ')
Responder Con Cita
  #3  
Antiguo 14-08-2014
Avatar de jafera
jafera jafera is offline
Miembro
 
Registrado: may 2007
Ubicación: Llagostera (Girona)
Posts: 582
Poder: 17
jafera Va por buen camino
Gracias por la respuesta.

Es mucho más lógico lo que propones, lo pruebo ipso facto.

Saludos

Josep
Responder Con Cita
  #4  
Antiguo 14-08-2014
Avatar de jafera
jafera jafera is offline
Miembro
 
Registrado: may 2007
Ubicación: Llagostera (Girona)
Posts: 582
Poder: 17
jafera Va por buen camino
Ha sido una respuesta perfecta, adaptado y funcionando

Muchas gracias

Josep
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
Capturar excepción Firebird en app cliente lucasarts_18 Firebird e Interbase 3 06-01-2011 02:24:32
Capturar informacion en una excepción firebird GuerreroDelphi Conexión con bases de datos 6 20-08-2007 01:22:59
Capturar ruta de acceso a la carpeta mis documentos y a la carpeta activa. Pepe Torres API de Windows 1 23-02-2007 23:02:21
Abrir un documento existente con Microsoft Word dec Trucos 1 15-11-2006 20:12:30
Capturar la excepcion EAccessViolation beatriz g Varios 2 25-08-2006 10:49:16


La franja horaria es GMT +2. Ahora son las 14:31:07.


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