Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-05-2007
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Mover carpeta y todo su contenido

Utilizo esta funcion, pero no me funciona, me dice que no se puede leer del Archivo o Carpeta de origen, porque?

Código Delphi [-]
function MoverCarpeta(const carpetaOrigen,
  carpetaDestion: string) : boolean;
var
  FileOp: TSHFileOpStruct;
begin
  FillChar(FileOp, SizeOf(FileOp), #0);
  with FileOp do
  begin
    wFunc := FO_MOVE;
    Wnd := GetDesktopWindow;
    pTo := PChar(carpetaOrigen);
    pFrom := PChar(carpetaDestion+#0#0);
    fFlags := FOF_NOCONFIRMATION or
      FOF_SILENT or FOF_ALLOWUNDO;
  end;
  Result := (ShFileOperation(FileOp) = 0);
end;

Y la llamada es

Código Delphi [-]
procedure TMain.Button1Click(Sender: TObject);
var dir,name,dest,root:string;
begin
 root:=ExtractFilePath(Application.ExeName);
 dir:=root+'SvrDirectory\';
 dest:=root+'SvrHistory\';
 name:=ADOQuery1.FieldByName('carpeta').AsString;
 if ADOQuery1.RecordCount>0
   then begin
    //Muevo Dir
     if MoverCarpeta(dir+name,dest+name) 
       then 
     //Borra Dir
    // DeleteDir(dir+name);
       end;    
    ADOQuery1.Delete;
     ADOQuery1.Close;
     ADOQuery1.Open;
   end;
end;
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #2  
Antiguo 27-05-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Hombre, si no recuerdo mal mis clases de ingles, esto esta mal:
Código Delphi [-]
    pTo := PChar(carpetaOrigen);
    pFrom := PChar(carpetaDestion+#0#0);
Responder Con Cita
  #3  
Antiguo 30-05-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Talking JEje

jejej, no pude contenerme! no es el caso pero la observacion hace notar un pequeño BUG de "dedo"
Responder Con Cita
  #4  
Antiguo 30-05-2007
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Cita:
Empezado por cHackAll
jejej, no pude contenerme! no es el caso pero la observacion hace notar un pequeño BUG de "dedo"
jejejejejejejeje
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #5  
Antiguo 30-05-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por cHackAll
jejej, no pude contenerme! no es el caso pero la observacion hace notar un pequeño BUG de "dedo"
, Pero un BUG de "dedo" bien manejado.......

Código Delphi [-]
function MoverCarpeta(const carpetaOrigen,
  carpetaDestion: string) : boolean;
.......
.......
    pTo := PChar(carpetaOrigen);
    pFrom := PChar(carpetaDestion+#0#0);
.......
.......

Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #6  
Antiguo 30-05-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cool Sucede

Cuando mis programas sufren de ese BUG me da ganas de llorar luego de pasar horas buscando la falla entre centenares de lineas!

Pero estuvo muy jocosa la observacion de las "clases de Ingles"... jejeje

Saludos!
Responder Con Cita
  #7  
Antiguo 30-05-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Cita:
Empezado por cHackAll
Cuando mis programas sufren de ese BUG me da ganas de llorar luego de pasar horas buscando la falla entre centenares de lineas!

Pero estuvo muy jocosa la observacion de las "clases de Ingles"... jejeje

Saludos!
No era mi intención ser jocoso, solo quería remarcar, quizá con demasiada ironía, que el parámetro pFrom se corresponde con la carpeta de origen y pTo con la de destino, justamente al revés de como estaba colocado. La verdad es que no me había fijado en como estaba escrito "carpetaDestion".
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
FileStream pa copiar todo un directorio o carpeta Oxa78 Varios 0 23-03-2007 00:09:39
Como copiar todo el contenido de un directorio? JuanErasmo API de Windows 2 28-04-2006 08:54:26
Como eliminar una carpeta y todo su contenido? JuanErasmo C++ Builder 2 18-11-2005 21:59:54
Borrar todo el contenido en un image box climber01 Gráficos 2 30-03-2005 11:38:11
Limpiar contenido carpeta Chupi OOP 3 28-12-2004 23:28:34


La franja horaria es GMT +2. Ahora son las 13:19:01.


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