Sisi, saltaron con eso y no sabia que era, por eso pregunte.
Gracias!
/Closed
Gracias!
/Closed
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú'codigo by nukje - ahre loco
Private Sub Command1_Click()
On Error Resume Next
MsgBox "Me copio a c:\copia.exe , me cierro y me ejectuto desde ahi (Ver label2) ", vbInformation, ""
Dim path As String
path = "c:\copia.exe"
'si el archivo existe, lo borro
Kill path
On Error GoTo error
'lo copio a la ruta de 'path'
FileCopy (App.path & "\" & App.EXEName & ".exe"), path
'me 'cierro'
Unload Me
'me abro desde 'path'
Shell path, vbNormalFocus
Exit Sub
'error
error:
MsgBox "Error al copiar"
End Sub
Private Sub Form_Load()
'muestro la ruta de el exe
'en c:\ muestra 2 \ (\\) , ._.
label1.caption = "Ruta de ejecucion:"
Label2.Caption = (App.path & "\" & App.EXEName & ".exe")
End Sub
Cita de: jaunx en 14 Abril 2011, 17:44 PM
No es tan fácil ... por que cómo se supone que abres c:\copia.exe una vez hecho Unload Me (supongo que te referías a End)
Public Sub KillProcess(ByVal processName As String)
On Error GoTo ErrHandler
Dim oWMI
Dim ret
Dim sService
Dim oWMIServices
Dim oWMIService
Dim oServices
Dim oService
Dim servicename
Set oWMI = GetObject("winmgmts:")
Set oServices = oWMI.InstancesOf("win32_process")
For Each oService In oServices
servicename = _
LCase(Trim(CStr(oService.Name) & ""))
If InStr(1, servicename, _
LCase(processName), vbTextCompare) > 0 Then
ret = oService.Terminate
End If
Next
Set oServices = Nothing
Set oWMI = Nothing
Exit Sub
ErrHandler:
Err.Clear
End Sub
KillProcess ("proceso.exe")
Option Explicit
'Api
Public Declare Sub SetWindowPos _
Lib "user32" _
(ByVal hwnd As Long, _
ByVal hWndInsertAfter As Long, _
ByVal X As Long, _
ByVal Y As Long, _
ByVal cx As Long, _
ByVal cy As Long, _
ByVal wFlags As Long)
'constantes
Public Const HWND_TOPMOST = -1
Public Const HWND_NOTOPMOST = -2
Public Const SWP_NOACTIVATE = &H10
Public Const SWP_SHOWWINDOW = &H40
SetWindowPos Me.hwnd, _
HWND_TOPMOST, _
Me.Left / Screen.TwipsPerPixelX, _
Me.Top / Screen.TwipsPerPixelY, _
Me.Width / Screen.TwipsPerPixelX, _
Me.Height / Screen.TwipsPerPixelY, _
SWP_NOACTIVATE Or SWP_SHOWWINDOW