Solución: La respuesta la encontré utilizando un proceso que se utiliza en VB6 pero que modificándolo un poco funciona perfectamente para mi problema. La solución la encontré aquí: Listar y cerrar procesos de Windows usando WMi
Mi modificación fue apenas mínima, pero la listo aquí de todas formas.
Private Function MatarProceso(ByVal StrNombreProceso As String, _
Optional ByVal DecirSINO As Boolean = True) As Boolean
' Variables para usar Wmi
Dim ListaProcesos As Object
Dim ObjetoWMI As Object
Dim ProcesoACerrar As Object
MatarProceso = False
ObjetoWMI = GetObject("winmgmts:")
If ObjetoWMI Is DBNull.Value = False Then
'instanciamos la variable
ListaProcesos = ObjetoWMI.InstancesOf("win32_process")
For Each ProcesoACerrar In ListaProcesos
If UCase(ProcesoACerrar.Name) = UCase(StrNombreProceso) Then
If DecirSINO Then
If MsgBox("¿Matar el proceso " & _
ProcesoACerrar.Name & vbNewLine & "...¿Está seguro?", _
vbYesNo + vbCritical) = vbYes Then
ProcesoACerrar.Terminate(0)
MatarProceso = True
End If
Else
'Matamos el proceso con el método Terminate
ProcesoACerrar.Terminate(0)
MatarProceso = True
End If
End If
Next
End If
'Elimina las variables
ListaProcesos = Nothing
ObjetoWMI = Nothing
End Function