Función IsOS (shlwapi.h)

Comprueba si hay sistemas operativos y características del sistema operativo especificados.

Sintaxis

BOOL IsOS(
  [in] DWORD dwOS
);

Parámetros

[in] dwOS

Tipo: DWORD

Valor que especifica qué sistema operativo o característica del sistema operativo se va a comprobar. Uno de los siguientes valores (no se pueden combinar valores).

Nombre Valor Descripción
OS_WINDOWS 0 El programa se ejecuta en una de las siguientes versiones de Windows:
  • Windows 95
  • Windows 98
  • Windows Me
Equivalente a VER_PLATFORM_WIN32_WINDOWS. Tenga en cuenta que ninguno de esos sistemas se admite en este momento. OS_WINDOWS devuelve FALSE en todos los sistemas admitidos.
OS_NT 1 Siempre devuelve TRUE.
OS_WIN95ORGREATER 2 Siempre devuelve FALSE.
OS_NT4ORGREATER 3 Siempre devuelve FALSE.
OS_WIN98ORGREATER 5 Siempre devuelve FALSE.
OS_WIN98_GOLD 6 Siempre devuelve FALSE.
OS_WIN2000ORGREATER 7 El programa se ejecuta en Windows 2000 o en uno de sus sucesores.
OS_WIN2000PRO 8 No utilice; use OS_PROFESSIONAL.
OS_WIN2000SERVER 9 No utilice; use OS_SERVER.
OS_WIN2000ADVSERVER 10 No utilice; use OS_ADVSERVER.
OS_WIN2000DATACENTER 11 No utilice; use OS_DATACENTER.
OS_WIN2000TERMINAL 12 El programa se ejecuta en Windows 2000 Terminal Server en modo de administración remota o en modo servidor de aplicaciones, o Windows Server 2003 (o uno de sus sucesores) en modo Terminal Server o Escritorio remoto para el modo de administración. Considere la posibilidad de usar un valor más específico, como OS_TERMINALSERVER, OS_TERMINALREMOTEADMIN o OS_PERSONALTERMINALSERVER.
OS_EMBEDDED 13 El programa se ejecuta en Windows Embedded, cualquier versión. Equivalente a VER_SUITE_EMBEDDEDNT.
OS_TERMINALCLIENT 14 El programa se ejecuta como un cliente de Terminal Server. Equivalente a GetSystemMetrics(SM_REMOTESESSION).
OS_TERMINALREMOTEADMIN 15 El programa se ejecuta en Windows 2000 Terminal Server en el modo de administración remota o Windows Server 2003 (o en uno de sus sucesores) en el modo de administración remota (estos son los modos de instalación predeterminados). Esto equivale a VER_SUITE_TERMINAL && VER_SUITE_SINGLEUSERTS.
OS_WIN95_GOLD 16 Siempre devuelve FALSE.
OS_MEORGREATER 17 Siempre devuelve FALSE.
OS_XPORGREATER 18 Siempre devuelve FALSE.
OS_HOME 19 Siempre devuelve FALSE.
OS_PROFESSIONAL 20 El programa se ejecuta en Windows NT Workstation o Windows 2000 (o en uno de sus sucesores) Professional. Equivalente a VER_PLATFORM_WIN32_NT && VER_NT_WORKSTATION.
OS_DATACENTER 21 El programa se ejecuta en Windows Datacenter Server o Windows Server Datacenter Edition, cualquier versión. Equivalente a (VER_NT_SERVER || VER_NT_DOMAIN_CONTROLLER) && VER_SUITE_DATACENTER.
OS_ADVSERVER 22 El programa se ejecuta en Windows Advanced Server o Windows Server Enterprise Edition, cualquier versión. Equivalente a (VER_NT_SERVER VER_NT_DOMAIN_CONTROLLER || ) && VER_SUITE_ENTERPRISE && !VER_SUITE_DATACENTER.
OS_SERVER 23 El programa se ejecuta en Windows Server (Estándar) o Windows Server Standard Edition, cualquier versión. Este valor no devolverá true para VER_SUITE_DATACENTER, VER_SUITE_ENTERPRISE, VER_SUITE_SMALLBUSINESS o VER_SUITE_SMALLBUSINESS_RESTRICTED.
OS_TERMINALSERVER 24 El programa se ejecuta en Windows 2000 Terminal Server en modo servidor de aplicaciones o en Windows Server 2003 (o uno de sus sucesores) en modo Terminal Server. Esto equivale a VER_SUITE_TERMINAL && VER_SUITE_SINGLEUSERTS.
OS_PERSONALTERMINALSERVER 25 El programa se ejecuta en Windows XP (o en uno de sus sucesores), Home Edition o Professional. Esto equivale a VER_SUITE_SINGLEUSERTS && ! VER_SUITE_TERMINAL.
OS_FASTUSERSWITCHING 26 El cambio rápido de usuario está habilitado.
OS_WELCOMELOGONUI 27 Siempre devuelve FALSE.
OS_DOMAINMEMBER 28 El equipo está unido a un dominio.
OS_ANYSERVER 29 El programa se ejecuta en cualquier producto de Windows Server. Equivalente a VER_NT_SERVER VER_NT_DOMAIN_CONTROLLER || .
OS_WOW6432 30 El programa es un programa de 32 bits que se ejecuta en Windows de 64 bits.
OS_WEBSERVER 31 Siempre devuelve FALSE.
OS_SMALLBUSINESSSERVER 32 El programa se ejecuta en Microsoft Small Business Server con una licencia de cliente restrictiva vigente. Equivalente a VER_SUITE_SMALLBUSINESS_RESTRICTED.
OS_TABLETPC 33 El programa se ejecuta en Windows XP Tablet PC Edition o en uno de sus sucesores.
OS_SERVERADMINUI 34 El usuario debe presentarse con la interfaz de usuario del administrador. Es posible tener una interfaz de usuario administrativa del servidor en una máquina que no sea de servidor. Este valor informa a la aplicación de que el perfil de un administrador se ha móvil a un no servidor y que la interfaz de usuario debe ser adecuada para un administrador. De lo contrario, el usuario se muestra una combinación de la configuración de administrador y no administrador.
OS_MEDIACENTER 35 El programa se ejecuta en Windows XP Media Center Edition o en uno de sus sucesores. Equivalente a GetSystemMetrics(SM_MEDIACENTER).
OS_APPLIANCE 36 El programa se ejecuta en Windows Appliance Server.

Valor devuelto

Tipo: BOOL

Devuelve un valor distinto de cero si se detecta la característica de sistema operativo o sistema operativo especificada; en caso contrario, FALSE.

Comentarios

Los valores no se proporcionan para Windows Vista y Windows 7. Para determinar si alguno de esos sistemas operativos está presente, use VerifyVersionInfo.

En versiones de Windows anteriores a Windows Vista, IsOS no se exportó por nombre ni se declaró en un archivo de encabezado público. Para usarlo en esos casos, debe usar GetProcAddress y solicitar ordinal 437 desde Shlwapi.dll para obtener un puntero de función. En Windows Vista, IsOS se incluye en Shlwapi.h y esto no es necesario.

Cuando se hace referencia a productos de servidor, "Windows Server" solo hace referencia al servidor Standard Edition. Si todos los productos de servidor están cubiertos por una marca determinada, se llama explícitamente en la tabla.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional, Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server, Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado shlwapi.h
Archivo DLL Shlwapi.dll (versión 5.0 o posterior)

Consulte también

GetSystemMetrics

GetVersionEx

VerifyVersionInfo