PDA

Ver la Versión Completa : Copiar fichero por la red


davezf
04-08-2005, 10:32:12
Hola,

Como puedo copiar un fichero desde un equipo a otro por la red?

Para acceder al directorio de destino necesito indicar usuario y password.

El equipo de destino tiene windows pero no puedo crear ningun programa ni instalar nada

Neftali [Germán.Estévez]
04-08-2005, 16:30:02
Revisa la API wNetAddConnection2

Puedes conectar una unidad de Red y luego desconectarla:


procedure TForm1.Button1Click(Sender: TObject);
var
NRW: TNetResource;
begin
with NRW do begin
dwType := RESOURCETYPE_ANY; lpLocalName := 'X:';
// map to this driver letter
lpRemoteName := 'MyServerMyDirectory';
// Must be filled in. If an empty string is used,
// it will use the lpRemoteName.
lpProvider := '';
end;
WNetAddConnection2(NRW, 'MyPassword', 'MyUserName', CONNECT_UPDATE_PROFILE);
end;

Descendents
05-08-2005, 00:46:51
No se si esto te servira, pero creo que si.
Estarás usando la copia misma de windows. Pruebalo.


function TForm1.CopiaTodo(Origen,Destino : String):LongInt;
var
F : TShFileOpStruct;
sOrigen, sDestino : String;
begin
try
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);
except
close;
end;
end;


luego lo llamas de la siguiente manera

CopiaTodo(\\cputal\c\taltaltal,\\cpuqual\c\taltaltal);