c#

Finalizar procesos por nombre

Este es un método para finalizar todas las instancias según el nombre del proceso indicado.

using System.Diagnostics;

/// 
/// Kill all instances of a Process by name
/// 
/// name of the process to kill
/// 
/// KillAllProcesses( "Outlook" );
/// 
private void KillAllProcesses( string name )
{
    Process[] processes = Process.GetProcessesByName( name );
    foreach( Process p in processes )
        p.Kill();
}

 

Información extraida de http://www.codegod.de/webappcodegod/Kill-process-by-name-with–NET-AID185.aspx

Cómo detectar un sistema de 32 ó 64 bits

IntPtr es utilizado nativamente en .Net, por eso el tamaño de su estructura se redimensiona según la capacidad del sistema operativo. Utilizando esta funcionalidad podemos detectar si el sistema operativo trabaja con procesadores de 32 bits o 64 bits, ya que entonces el tamaño de la estructura de IntPtr será de 4 bits en el caso de 32 bits y 8 bits en 64 bits.

' Código VB.Net 
If IntPtr.Size = 8 Then

    ' Máquina con procesador de 64 bits

ElseIf IntPtr.Size = 4 Then

    ' Máquina con procesador de 32 bits

End If

 

// Código C#
if(IntPtr.Size == 8) 
{
    // Máquina con procesador de 64 bits
} 
else if(IntPtr.Size == 4) 
{
    // Máquina con procesador de 32 bits
}

Marcar una función como obsoleta

En ocasiones, sobre todo cuando trabajamos en equipos de desarrollo distribuidos o trabajando en diferentes partes del mismo software, debemos indicar de alguna manera la conveniencia de actualizar las llamadas a alguna función, bien sea por que hay otra función más potente y actualizada para realizar el mismo proceso y/o porque será eliminada.

Visual Studio provee una manera sencilla de “crear este aviso” para el resto de desarrolladores, incluyendo la clausula Obsolete.

' Código Visual Basic
<Obsolete("Esta función es obsoleta, por favor utilice CheckComputer", False)> _
Function CheckSystem() As String

// Código C#
[Obsolete("Esta función es obsoleta, por favor utilice CheckComputer")]
Public string CheckSystem

El que una función o clase esté marcada como obsoleta, no nos impide utilizarla, ya que por defecto, muestra una advertencia o warning en la lista de errores.

Para lograr que el compilador nos marque un error y no una advertencia cuando utilizamos la función obsoleta CheckSystem, debemos cambiar la definición de la función indicando en el parámetro Error el valor True.

' Código Visual Basic
<Obsolete("Esta función es obsoleta, por favor utilice CheckComputer", True)> _
Function CheckSystem() As String

// Código C#
[Obsolete("Esta función es obsoleta, por favor utilice CheckComputer", True)]
Public string CheckSystem