Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-02-2004
sergio_015 sergio_015 is offline
Miembro
 
Registrado: jul 2003
Ubicación: Aguascalientes, Ags.
Posts: 46
Poder: 0
sergio_015 Va por buen camino
Capturar Errores y/o avisos

Estoy haciendo una aplicacion en la cual copio varios archivos a decenas de equipos de la red, esto lo tengo q hacer seguido. Cuando una maquina esta apagado o no existe la carpeta me manda un error o aviso, lo q quiero es q esos errores me los capture en un edit o listbox en lugar de mostrarlos. Gracias.
__________________
Sergio Esquivel Arredondo
T.S.U. Informatica
Responder Con Cita
  #2  
Antiguo 10-02-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Código:
try
  copiaArchivo
except
  on E: Exception do
    memo1.lines.add(E.Message);
end;
Espero te sirva
Responder Con Cita
  #3  
Antiguo 10-02-2004
sergio_015 sergio_015 is offline
Miembro
 
Registrado: jul 2003
Ubicación: Aguascalientes, Ags.
Posts: 46
Poder: 0
sergio_015 Va por buen camino
Lo que yo usu es la funcion ShFileopstruct para copiar directorios, subdirectorios y archivos, aqui pongo el codigo para darme a entender un poco mas.

function CopiaTodo(Origen,Destino : String) :
LongInt;
var
F : TShFileOpStruct;
sOrigen, sDestino : String;
begin
Result := 0;
sOrigen := Origen + #0;
sDestino := Destino + #0;
with F do
begin
Wnd := Application.Handle;
wFunc := FO_COPY;
pFrom := @sOrigen[1];
pTo := @sDestino[1];
fFlags := FOF_ALLOWUNDO OR FOF_NOCONFIRMATION
end;
Result := ShFileOperation(F);
//aqui me manda el error, aviso o comienza la copia, aqui necesito que si manda error no lo muestre, mas sin embargo el progreso de la copia si, ya puse el try except como me indicaste pero nunca toma el except, la variable result como han de saber devuelve 0 o 1 solamente. Gracias
__________________
Sergio Esquivel Arredondo
T.S.U. Informatica
Responder Con Cita
  #4  
Antiguo 10-02-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
mmmmmm, creo que esto es de mal arreglo ya que el error lo envía el propio Windows sin dejar que lo puedas controlar tu.

Lo que se me ocurre que puedes hacer es comprobar la existencia de la carpeta o que la máquina está encendida antes de lanzar la copia.

O bien cambiar el proceso de copia y currartelo tu mismo con FindFirst y FindNext (en mi web tienes una demo)

Espero que te sirvan las ideas
Responder Con Cita
  #5  
Antiguo 10-02-2004
sergio_015 sergio_015 is offline
Miembro
 
Registrado: jul 2003
Ubicación: Aguascalientes, Ags.
Posts: 46
Poder: 0
sergio_015 Va por buen camino
De hecho eso exactamente pasa, windows manda el mensaje y no me deja capturarlo, voy a intentar con tu demo. GRACIAS POR CONTESTAR
__________________
Sergio Esquivel Arredondo
T.S.U. Informatica
Responder Con Cita
  #6  
Antiguo 11-02-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Prueba añadir la bandera FOF_NOERRORUI al campo fFlags. No sé qué versión de Delphi o IE requiera, yo lo probé en Delphi7 e IE 5.5 y funciona como quieres. Esta bandera no aparece en la ayuda de Windows incluida con Delphi pero sí viene documentada en el SDK de Windows:

Cita:
Do not display a user interface if an error occurs.
// Saludos
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


La franja horaria es GMT +2. Ahora son las 20:29:55.


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