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 05-01-2009
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
como hacer copiar un archivo desde cualquier hubicacion

hola amigos del foro como estan quiero saber como copiar un archivo sin especificar la unidad de origen estado intentando hacerlo de esta manera pero no me sale

Código Delphi [-]
BEGIN
   COPYFILE (PCHAR('\.\:\BERNARDO.DOC'), PCHAR ('F:\BERNARDO.DOC'), TRUE) ;
  END;
Responder Con Cita
  #2  
Antiguo 05-01-2009
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Debes usar rutas absolutas. No voy a adivinar lo que quieres hacer, explícalo si quieres más detalles.

Edito: que serio me ha quedado el mensaje leñe (no era mi intención)

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #3  
Antiguo 05-01-2009
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
bueno lo que tengo pensado es hacer es copiar la misma aplicacion que se ejecuta desde un cd-rom a una unidad de la pc esto pienso hacerlo en varios pc puesto que los pc no tienen la misma letra asignada quiero hacerlo asi
Responder Con Cita
  #4  
Antiguo 05-01-2009
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Si no indicas la unidad, el programa toma por defecto la unidad en donde se esta ejecutando el programa, esto es, si corres tu programa desde la unidad C:, si pones
Código:
COPYFILE (PCHAR('\.\:\BERNARDO.DOC'), PCHAR ('F:\BERNARDO.DOC'), TRUE) ;
El programa buscara el achivo BERNARDO.DOC en el directorio raiz de C: (aunque me parece que el path que pusiste está mal escrito. Por otro lado si lo que quieres es que el archivo siempre se guarde en la misma ubicación, digamos el disco duro, sea cual sea la unidad que tenga asignado, creo que no se puede. De hecho todos los programas de instalación te preguntan siempre a donde quieres instalar precisamente por ese motivo.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #5  
Antiguo 05-01-2009
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola, si quieres copiar desde el CD-ROM, entonces tendrías primero que ver a que letra pertenece la unidad de CD_ROM, podrías hacer algo como esto:

Código Delphi [-]
var
 Drive:Char;
 CDROM : String;
 Tipo:Integer;
begin
 for drive:= 'A' to 'Z' do
  begin
   Tipo := GetDriveType(PChar(drive+':\'));
   if Tipo=DRIVE_CDROM then
    begin
     CDROM := drive+':\';
     break;
    end;
  end;

ahora haces el copiado desde esa unidad.

Código Delphi [-]
COPYFILE (PCHAR(CDROM+'BERNARDO.DOC'), PCHAR ('F:\BERNARDO.DOC'), TRUE) ;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #6  
Antiguo 05-01-2009
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
si tu aplicación se está ejecutando en el CD, bastaría con:
Código Delphi [-]
rutaOrigen := ExtractFileDir(application.exeName)

Si quieres copiar el archivo a la unidad donde está el windows instalado, podrías usar una función tipo "GetWindowsDir" y extractFileDrive para obtener la letra de dicha unidad.

Código Delphi [-]
// función original de NKLIB.
function GetWinDir: String;
begin
  SetLength(Result, MAX_PATH);
  GetWindowsDirectory(PChar(Result), MAX_PATH);
  SetLength(Result, StrLen(PChar(Result)));
end (*GetWinDir*);

Cita:
Empezado por AzidRain Ver Mensaje
Si no indicas la unidad, el programa toma por defecto la unidad en donde se esta ejecutando el programa
Siempre que se me ha olvidado la ruta absoluta, el archivo ha terminado en la carpeta windows . Creo recordar que la ruta activa del sistema operativo es distinto de la ruta de tu aplicación.

Tengo entendido (aunque no comprobado) que en tu aplicación puedes usar chDir (creo que esa es la función de delphi) para cambiar la ruta activa del S.O. pero, cualquier programa en ejecución podría hacer lo propio, con lo cual a saber donde se marcha el archivo.

Yo al menos, prefiero no liarme y uso siempre rutas absolutas.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 05-01-2009 a las 06:31:37.
Responder Con Cita
  #7  
Antiguo 05-01-2009
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
ok amigos probare eso codigos
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
copiar archivo a otra maquina de la red desde un servicio hach API de Windows 1 02-10-2018 11:46:32
Abrir cualquier tipo de archivo desde mi aplicación Albano Varios 3 06-10-2006 20:48:31
copiar archivo desde opendialog empty Varios 2 07-10-2004 19:34:46
Como copiar un archivo desde Delphi Odnanref Varios 1 10-03-2004 02:53:58
Como copiar un archivo en Delphi? Ricsato Varios 3 29-10-2003 21:04:48


La franja horaria es GMT +2. Ahora son las 00:03:13.


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