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 13-05-2010
Ricardo2010 Ricardo2010 is offline
Miembro
 
Registrado: may 2010
Posts: 60
Poder: 15
Ricardo2010 Va por buen camino
Copiar un archivo desde un computador a otro

Buenas, trabajo con D2009 y tengo el siguiente problema, la aplicación copiaba documentos desde un equipo (Cliente) a otro (servidor). sin problemas Esto lo efectua con las siguientes instrucciones

Código Delphi [-]
if MessageDlg(Msg, mtCustom, mbOKCancel, 0) = mrOK then
begin
OldFile := TFileStream.Create(
OldFileName, fmOpenRead or fmShareDenyWrite);
try
NewFile := TFileStream.Create(
NewFileName, fmCreate or fmShareDenyRead);
try
NewFile.CopyFrom(OldFile, OldFile.Size);
finally
FreeAndNil(NewFile);
end;
finally
FreeAndNil(OldFile);
end;
end;
Esta funciona correctamente, el problema que tengo es que se decidio traspasar el directorio a otro servidor , de este se sabe completa la ruta (path) pero el sistema no llega ya que debe autentificarse para ingresar, el usuario y contraseña la tengo.

Tengo el path, usuario y contraseña para identificacion, la pregunta es como hago para que internamente a traves de D2009 se conecte al servidor.

Si yo por fuera llamo al path me solicita el usuario/contraseña para ingresar se las doy y el sistema nuevamente vuelve a funcionar, este acto como lo hago internamente a traves de la aplicacion

Última edición por rgstuamigo fecha: 19-05-2010 a las 00:38:26. Razón: Estética en el código
Responder Con Cita
  #2  
Antiguo 13-05-2010
manuc manuc is offline
Miembro
 
Registrado: abr 2010
Posts: 165
Poder: 15
manuc Va por buen camino
Hola Ricardo2010,

¿Cabría la posibilidad de mapear una unidad de red al directorio compartido del servidor?

Existen por aquí código para conectar una unidad de red a tu servidor, desde Delphi. Una vez conectada la unidad, podrías operar con ella, para copiar los ficheros que necesitas.

Un saludo.
Responder Con Cita
  #3  
Antiguo 13-05-2010
Ricardo2010 Ricardo2010 is offline
Miembro
 
Registrado: may 2010
Posts: 60
Poder: 15
Ricardo2010 Va por buen camino
Sucede que los usuarios son mas de 5000 y se conectan por distintas formas algunos por citrix otros por terminal server, por eso queria ver la posibilidad de yo invocar internamente la aplicacion de windows para conectar una unidad y pasarle los parametros de usuario y contraseña cosa que el usuario que esta en la aplicacion no se de cuenta.

Todo funcionaba correctamente hasta que se les ocurrio separa la carpeta donde quedaban los doctos por un tema de espacio.

Existe de alguna forma que el usuario cuando ingrese a la aplicacion delphi pueda internamente crear este map, claro esta que no se de cuenta. El administrador de red dio el usuario y contraseña para que siempre utilice la misma internamente , estas son distintas al usuario que se conecta a la red y tambien distinta al usuario que se conecta a la aplicacion .
Responder Con Cita
  #4  
Antiguo 14-05-2010
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 913
Poder: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
   NetResource: TNetResource;
begin
   
   NetResource.dwType := RESOURCETYPE_DISK;
   //Letra con la cual sera mapeado el recurso
   NetResource.lpLocalName := 'M:';
   //Nombre del recurso
   NetResource.lpRemoteName := '\\Servidor\Carpeta_Compartida';
   NetResource.lpProvider := '';
   WNetAddConnection2(NetResource, 'Password','Usuario', CONNECT_UPDATE_PROFILE);
end;

A ver como te va con esto...

Saludos
Responder Con Cita
  #5  
Antiguo 14-05-2010
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 913
Poder: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Y para desconectar de la unidad seria...

Código Delphi [-]
WNetCancelConnection2('M:', CONNECT_UPDATE_PROFILE, True);

Saludos...
Responder Con Cita
  #6  
Antiguo 14-05-2010
Ricardo2010 Ricardo2010 is offline
Miembro
 
Registrado: may 2010
Posts: 60
Poder: 15
Ricardo2010 Va por buen camino
gracias lo probare y les cuento
Responder Con Cita
  #7  
Antiguo 18-05-2010
Ricardo2010 Ricardo2010 is offline
Miembro
 
Registrado: may 2010
Posts: 60
Poder: 15
Ricardo2010 Va por buen camino
Probe lo que me dices cloayza y funciona perfocto.

Gracias nuevamente.
Responder Con Cita
  #8  
Antiguo 27-12-2011
petete2008 petete2008 is offline
Miembro
 
Registrado: oct 2008
Posts: 109
Poder: 16
petete2008 Va por buen camino
¿como sería en el caso de quere mapear una dirección ftp?
Por ejemplo asignar la unidad Z al ftp://pruebas.es

Gracias
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
fecha de otro computador ljvenegas Varios 3 19-06-2008 09:08:27
Crear un archivo en un Computador Remoto SoulSoldier Varios 1 29-03-2007 19:34:40
Como quemar un CD en otro computador desde mi computador en una LAN? JuanErasmo Redes 5 13-01-2006 17:38:11
copiar un archivo a otro directorio scotex Varios 2 19-02-2005 11:27:10
copiar archivo desde opendialog empty Varios 2 07-10-2004 19:34:46


La franja horaria es GMT +2. Ahora son las 00:12:27.


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