[email protected]

Asunción, PARAGUAY

Ingeniería y desarrollo de software, emprendimiento, cursos

4 de marzo de 2015

C#: Determinar si el Sistema Operativo es servidor

Introducción

Muchas veces es necesario conocer qué versión de Windows estamos corriendo en nuestros clientes. En esta entrada mostraré cómo saber si el sistema operativo es cliente o es servidor. Con esto lograremos ejecutar determinadas acciones dependiendo de esta funcionalidad.

Función

Básicamente utilizamos la función IsOS para determinar su valor y obtener el resultado que buscamos. Mas información sobre esta función la puedes encontrar aquí.

public class SO
{
    public static bool EsWindowsServer()
    {
        //Esta constante indica que hablamos de Windows Server
        const int OS_ANYSERVER = 29; 
        //Llamamos a la función correspondiente y pasamos como parámetro el valor OS_ANYSERVER (para cualquier SO de servidor).
        return SO.IsOS (SO.OS_ANYSERVER); 
    }   

    //Llamada a código no administrado. Ver funcionalidad de DllImport en la conclusión.
    [DllImport("shlwapi.dll", SetLastError=true, EntryPoint="#437")]
    private static extern bool IsOS(int os); //
}

Luego llamas a la función SO.EsWindowsServer() y ya tienes esta funcionalidad disponible para tu aplicación.

Conclusión

Llamando a esta simple función puedes determinar detalles importantes de sistema operativo, si te interesan los demás valores puedes investigarlos aquí. También puedes obtener mayor información sobre llamadas a código no administrado aquí.

Hey, we've just launched a new custom color Blogger template. You'll like it - https://t.co/quGl87I2PZ
Suscribíte al boletín