Saber de los procesos que se estan ejecutando

»
» Saber de los procesos que se estan ejecutando
»
Public Class Form1

    Private Sub Form1_Load(….) Handles MyBase.Load

        ‘Obtener la lista de procesos en ejecucion
        Dim ProcesosLocales As Process() = Process.GetProcesses
        ‘Construir un DataGridView para visualizar
        Dim MiDgv As New DataGridView
        ‘Acoplarlo al form rellenandolo en su totalidad
        MiDgv.Dock = DockStyle.Fill
        Me.Controls.Add(MiDgv)
        ‘ Podriamos utilizar : MiDgv.DataSource = ProcesosLocales.ToList
        ‘ aunque antes deberiamos contemplar las excepciones 
        ‘ derivadas de la falta de privilegios en el
        ‘ acceso a ciertas propiedades de los procesos
        MiDgv.DataSource = _
         (From procesos In ProcesosLocales Select _
          New MiProcessInfo() With {.Id = procesos.Id, _
                                    .Nombre = procesos.ProcessName} _
         ).ToList
    End Sub
End
Class

Class MiProcessInfo
   
    ‘Leer/Asignar su Id
    Private m_Id As String
    Public Property Id() As Integer
        Get
            Return m_Id
        End Get
        Set(ByVal value As Integer)
            m_Id = value
        End Set
    End Property
   
    ‘Leer/Asignar su Nombre
    Private m_Nombre As String

    Public Property Nombre() As String
        Get
            Return m_Nombre
        End Get
        Set(ByVal value As String)
            m_Nombre = value
        End Set
    End Property
End
Class

0 pensamientos en “Saber de los procesos que se estan ejecutando”

  1. Fabuloso, funciona perfectamente; solo me resta preguntar si existe la forma de:

    1. Que se actualice la lista de procesos en tiempo real, es decir justo cuando se ejecuta o abre una nueva aplicacion.
    2. Existe una manera de saber que proceso es el que se esta ejecutando en primer plano.

    Muchas gracias por el codigo, funciono increible.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *