Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   copiar una dll a una direccion (https://www.clubdelphi.com/foros/showthread.php?t=25172)

gulder 14-09-2005 17:14:31

copiar una dll a una direccion
 
mi programa utiliza una dll y necesito copiar la dll a una direccion especifica al ejecutar mi programa.
En el evento oncreate de la forma este crea un directorio en C:\logula con la funcion mkdir esto lo hace pero aqui es donde quiero guardar mi dll desde este evento.
pero tengo otro problema que si buelvo a ejecutar mi programa ya esta el directorio creado, me arroja un error por que el directorio ya existe, como hago para capturar este error grasias de antemano gulder

Neftali [Germán.Estévez] 14-09-2005 17:18:19

Utiliza la funcion DirectoryExists de Delphi.

gulder 14-09-2005 17:39:28

grasias Neftali
 
me imagino que esta funcion es para capturar el error del directorio cuando ya exusta grasias......

Neftali [Germán.Estévez] 14-09-2005 18:18:53

No exactamente.
Revisa la ayuda de Delphi y verás que devuelve un Booleano. Debes ejecutarla antes de intentar crear el directorio y te dirá si existe o no, segun la respuesta lo intentas crear o no.

dec 14-09-2005 18:20:51

Hola,

Cita:

Empezado por gulder
me imagino que esta funcion es para capturar el error del directorio cuando ya exusta grasias......

La función DirectoryExists requiere un parámetro únicamente, el cual ha de ser la ruta del directorio cuya existencia queremos comprobar: la función devolverá "true" o "false", si el directorio existe o no existe, respectivamente. Sabiendo lo dicho, podemos aprovecharlo, por ejemplo:

Código Delphi [-]
{ Caso 1 }
 
 var
   dir: string;
 begin
   dir := 'C:\directorio';
   // Preguntamos: ¿Existe el directorio?
   if not DirectoryExists(dir) then
     CreateDir(dir); // No existe, lo creamos
   {...}
 end;
 
 { Caso 2 }
 
 var
   dir: string;
 begin
   dir := 'C:\directorio';
   // Preguntamos: ¿Existe el directorio?
   if DirectoryExists(dir) then
   begin
     {
        El directorio existe, entonces,
        hagamos lo que tengamos que hacer.
     }
   end;
 end;

gulder 14-09-2005 18:25:10

parece que encontre la parte de la copia de la dll
 
hola a todos como andan espero que bien jejej

buscando por hay encontre la siguiente funcion
Código:

 
copyfile(pchar(archivo_origen),pchar(archivo_destino),false)

todavia no la he provado si me equivoco disculpenme estamos es para aprender grasias esta funcion me serviria para la copia de la dll a una direccion especifica

gulder 14-09-2005 18:29:37

grasias dec muchas grasias
 
grasias dec por resolverme algunas dudas sobre la funcion DirectoryExists

att gulder

Neftali [Germán.Estévez] 14-09-2005 18:35:33

Cita:

Empezado por gulder
...buscando por hay encontre la siguiente funcion
Código:

 
 copyfile(pchar(archivo_origen),pchar(archivo_destino),false)


Pertenece a la API de Windows y efecvtivamente con ella puedes copiar un fichero de un lugar a otro. Si el tercer parámetro lo colocas a False (tal y como está aquí) si el fichero ya existe intentará sobreescribirlo, los otros están bastante claros.

gulder 14-09-2005 21:27:10

problemas con la funcion copyfile
 
hola a todos que mas como andan tengo un problema

Neftali como vos dises que es una funcion del api que tengo que hacer para definirla el problema es como hago para definir este metodo en la parte private, del programa

dec 14-09-2005 22:06:20

Hola,

Únicamente tienes que añadir la unidad "Windows" en alguna de las cláusulas "Uses" de la unidad en que quieras utilizar la función "CopyFile".

gulder 14-09-2005 22:39:54

grasias dec
 
dec voz sos grande ya sirve por esa uses no me funcionaba


La franja horaria es GMT +2. Ahora son las 07:26:55.

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