Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: rextor en 7 Julio 2005, 16:24 pm



Título: copiar un exe donde se le diga?
Publicado por: rextor en 7 Julio 2005, 16:24 pm
Hola

¿Alguien sabria o podria decirme que codigo fuente necesitaria para copiar un exe a si mismo donde se le indicara? ::) ;D

Gracias

Salu2


Título: Re: copiar un exe donde se le diga?
Publicado por: CodeName47/GEDZAC en 7 Julio 2005, 16:47 pm
es demasiado sencillo como pra que alguien s emoleste en codificarlo, pero se hace con la api CopyFile.

en donde declaras esta funcion

Citar
Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long

yluego para usarla es asi:

Citar
CopyFile "origen","destino"

en donde origen es su ruta de  si mismo y destino es la ruta donde quires que se copie.
saludos :)


Título: Re: copiar un exe donde se le diga?
Publicado por: rextor en 7 Julio 2005, 17:42 pm
Hola

Pues si que era dificil jejeje.Asi kedaria

Option Explicit
Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
Private Sub Form_Load()
    Dim Res As Long

    ' Este ejemplo copia el fichero AutoExec.Bat como NewExec.Bat
    ' y lo sobreescribe si existe
    Res = CopyFile("c:AutoExec.Bat", "c:NewExec.Bat", 0)
End Sub
por si le interesa a alguien,gracias por la ayuda


Saludos :P


Título: Re: copiar un exe donde se le diga?
Publicado por: p0w3r f1y en 8 Julio 2005, 01:51 am
En realidad no hace falta utilizar apis.....
Código:
FileCopy App.path & "\" & App.EXEName & ".exe", destino


Título: Re: copiar un exe donde se le diga?
Publicado por: programatrix en 8 Julio 2005, 12:36 pm
A mi la forma que me parece mejor es la de pOw3rf1y, cambiando una cosa:
Código:
FileCopy App.path & "\" & App.EXEName & ".exe", "direccióncarpeta" & app.exename & ".exe"
Asi sigue conservando su nombre original.