PDA

Ver la Versión Completa : Error al copiar archivo con SHFileOperationA(F)?


JuanErasmo
20-04-2006, 15:41:47
Buenos dias amigos.....
me esta pasando algo muy extraño.....estoy copiando una carpeta a otra ubicación en mi PC asi y me funciona perfecto SHFILEOPSTRUCTA *F = new SHFILEOPSTRUCTA;
String sOrigen, sDestino; // : String;
AnsiString Origen,Destino,cedulaos,examenos;
Origen="c:\\o\\a\\*.*";
cedulaos=DBEdit7->Text;
examenos= DBEdit36->Text;
DBEdit20->Text;
int Result;
Result = 0;
Destino= "c:\\medicalimage\\dinamica\\imagenes\\"+cedulaos+"\\"+examenos+"\\ (file://\\)";
Origen=DBEdit16->Text+"\\"+"*.*";
ForceDirectories(Destino);
F->hwnd = Application->Handle;
F->wFunc = FO_COPY; // ó FO_COPY
// F->pFrom = PChar("c:\\o\\a\\*.*");
// F->pTo = PChar("C:\\kk\\1\\5") ; // Copiar a.....
F->pFrom = (Origen.c_str());
F->pTo = (Destino.c_str());
F->fFlags = FOF_ALLOWUNDO | FOF_NOCONFIRMATION ;
SHFileOperationA(F);
delete F;

el problema es que en mi PC funciona perfecto!, pero cuando lo llevo a otro PC, me lanza una excepción de que: "Error al copiar Archivo : No se puede leer el dispositivo de origen".....
No se que mas hacer.....que puede estar pasando??
Gracias por su respuesta!

JuanErasmo
20-04-2006, 16:21:00
Disculpen el desorden anterior....acá se ve mas claro

SHFILEOPSTRUCTA *F = new SHFILEOPSTRUCTA;

AnsiString Origen,Destino;
int Result;
Result = 0;
Destino= Edit1->Text;
Origen = DirectoryListBox1->Directory;
ForceDirectories(Destino);
F->hwnd = Application->Handle;
F->wFunc = FO_COPY; // ó FO_COPY
F->pFrom = (Origen.c_str());
F->pTo = (Destino.c_str());
F->fFlags = FOF_ALLOWUNDO | FOF_NOCONFIRMATION ;
SHFileOperationA(F);
delete F;


Funciona en mi PC, pero en otro me dice : "Error al copiar Archivo, no se puede leer el dispositivo de origen"
Gracias por su respuesta si alguin sabe que puede estar pasando...
Gracias!