Gracias por el dato tio voy a probarlo
Por otro lado encontre
este articulo que utiliza wmi
El hecho es que lo entiendo a medias logre, reducir el codigo y quedo asi, es posible reducirlo mas, para entenderlo mejor, voy a revisar tu post
Código:
Option Explicit
' Variables para usar Wmi
Dim ListaProcesos As Object
Dim ObjetoWMI As Object
Dim ProcesoACerrar As Object
Private Function MatarProceso(StrNombreProceso As String) As Boolean
MatarProceso = False
Set ObjetoWMI = GetObject("winmgmts:")
If IsNull(ObjetoWMI) = False Then
'instanciamos la variable
Set ListaProcesos = ObjetoWMI.InstancesOf("win32_process")
For Each ProcesoACerrar In ListaProcesos
If UCase(ProcesoACerrar.Name) = UCase(StrNombreProceso) Then
'Matamos el proceso con el método Terminate
ProcesoACerrar.Terminate (0)
MatarProceso = True
End If
Next
End If
'Elimina las variables
Set ListaProcesos = Nothing
Set ObjetoWMI = Nothing
End Function
Private Sub Command1_Click()
'Llamamos a MatarProceso pasandole el nombre
MatarProceso Text1
End Sub
saludos