Compruebe si el proceso se está ejecutando en C#

Muhammad Maisam Abbas 16 febrero 2024
  1. Compruebe si el proceso se está ejecutando con la función Process.GetProcessByName() en C#
  2. Compruebe si el proceso se está ejecutando con la función Process.GetProcessById() en C#
Compruebe si el proceso se está ejecutando en C#

Este tutorial presentará los métodos para verificar si un proceso se está ejecutando en C#.

Compruebe si el proceso se está ejecutando con la función Process.GetProcessByName() en C#

La función Process.GetProcessByName() obtiene todos los procesos en ejecución del mismo nombre en C#. La función Process.GetProcessByName() toma el nombre del proceso como entrada y devuelve un array de todos los procesos que se ejecutan con el mismo nombre. Podemos usar este método para verificar si un proceso se está ejecutando o no en nuestro sistema. Vea el siguiente ejemplo de código.

using System;
using System.Diagnostics;

namespace check_if_process_is_running {
  class Program {
    static void Main(string[] args) {
      Process[] processes = Process.GetProcessesByName("notepad");
      if (processes.Length == 0) {
        Console.WriteLine("Not running");
      } else {
        Console.WriteLine("Running");
      }
    }
  }
}

Producción :

Running

En el código anterior, verificamos si había algún proceso con el nombre notepad ejecutándose en nuestro sistema o no. Almacenamos el resultado de la función Process.GetProcessByName("notepad") en una serie de procesos. Si la longitud del array es cero, lo que significa que el array está vacía, el proceso no se está ejecutando. Si hay un solo elemento dentro del array, lo que significa que el array no está vacía, entonces el proceso con el nombre especificado se está ejecutando en nuestro sistema.

Compruebe si el proceso se está ejecutando con la función Process.GetProcessById() en C#

La función Process.GetProcessById() hace que un proceso se ejecute en nuestro sistema con el ID de proceso especificado en C#. La función Process.GetProcessById() toma la identificación del proceso como parámetro y devuelve una instancia de la clase Process con la identificación especificada. Este método también se puede utilizar para verificar si un proceso se está ejecutando en nuestro sistema o no. El siguiente ejemplo de código nos muestra cómo podemos verificar si un proceso se está ejecutando en nuestro sistema o no con la función Process.GetProcessById() en C#.

using System;
using System.Diagnostics;

namespace check_if_process_is_running {
  class Program {
    static bool isRunning(int id) {
      try {
        Process.GetProcessById(id);
      } catch (InvalidOperationException) {
        return false;
      } catch (ArgumentException) {
        return false;
      }
      return true;
    }

    static void Main(string[] args) {
      bool running = isRunning(15);
      if (running) {
        Console.WriteLine("Running");
      } else {
        Console.WriteLine("Not Running");
      }
    }
  }
}

Producción :

Not Running

En el código anterior, creamos una función isRunning() que verifica si un proceso se está ejecutando o no. La función isRunning() toma la identificación del proceso como argumento y devuelve true si el proceso se está ejecutando y devuelve false si no se está ejecutando.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artículo relacionado - Csharp Process