IsOS 函数 (shlwapi.h)

检查指定的操作系统和操作系统功能。

语法

BOOL IsOS(
  [in] DWORD dwOS
);

参数

[in] dwOS

类型:DWORD

一个 值,指定要为其检查哪个操作系统或操作系统功能。 以下值之一 (不能将值组合) 。

名称 说明
OS_WINDOWS 0 该程序在以下 Windows 版本之一上运行:
  • Windows 95
  • Windows 98
  • Windows Me
等效于 VER_PLATFORM_WIN32_WINDOWS。 请注意,目前不支持这些系统。 OS_WINDOWS 在所有受支持的系统上返回 FALSE
OS_NT 1 始终返回 TRUE
OS_WIN95ORGREATER 2 始终返回 FALSE
OS_NT4ORGREATER 3 始终返回 FALSE
OS_WIN98ORGREATER 5 始终返回 FALSE
OS_WIN98_GOLD 6 始终返回 FALSE
OS_WIN2000ORGREATER 7 该程序在 Windows 2000 或其后续版本之一上运行。
OS_WIN2000PRO 8 请勿使用;使用 OS_PROFESSIONAL。
OS_WIN2000SERVER 9 请勿使用;使用 OS_SERVER。
OS_WIN2000ADVSERVER 10 请勿使用;使用 OS_ADVSERVER。
OS_WIN2000DATACENTER 11 请勿使用;使用 OS_DATACENTER。
OS_WIN2000TERMINAL 12 该程序在 Windows 2000 终端服务器上以远程管理模式或应用程序服务器模式运行,或 Windows Server 2003 (或其后续版本之一) 终端服务器模式或远程桌面管理模式。 请考虑使用更具体的值,例如OS_TERMINALSERVER、OS_TERMINALREMOTEADMIN或OS_PERSONALTERMINALSERVER。
OS_EMBEDDED 13 程序在 Windows Embedded(任何版本)上运行。 等效于 VER_SUITE_EMBEDDEDNT
OS_TERMINALCLIENT 14 程序作为终端服务器客户端运行。 等效于 GetSystemMetrics (SM_REMOTESESSION) 。
OS_TERMINALREMOTEADMIN 15 该程序在远程管理模式下的 Windows 2000 终端服务器上运行,或 Windows Server 2003 (或其一个后续版本) 远程桌面管理模式, (这些是) 的默认安装模式。 这等效于 VER_SUITE_TERMINAL && VER_SUITE_SINGLEUSERTS
OS_WIN95_GOLD 16 始终返回 FALSE
OS_MEORGREATER 17 始终返回 FALSE
OS_XPORGREATER 18 始终返回 FALSE
OS_HOME 19 始终返回 FALSE
OS_PROFESSIONAL 20 该程序在 Windows NT 工作站或 Windows 2000 (或其后续) 专业版之一上运行。 等效于 VER_PLATFORM_WIN32_NT && VER_NT_WORKSTATION
OS_DATACENTER 21 该程序在 Windows Datacenter Server 或 Windows Server Datacenter Edition(任何版本)上运行。 等效于 (VER_NT_SERVER || VER_NT_DOMAIN_CONTROLLER) && VER_SUITE_DATACENTER
OS_ADVSERVER 22 该程序在 Windows Advanced Server 或 Windows Server Enterprise Edition任何版本上运行。 等效于 (VER_NT_SERVER || VER_NT_DOMAIN_CONTROLLER) && VER_SUITE_ENTERPRISE && !VER_SUITE_DATACENTER
OS_SERVER 23 该程序在 Windows Server (Standard) 或 Windows Server Standard Edition(任何版本)上运行。 对于VER_SUITE_DATACENTER、VER_SUITE_ENTERPRISEVER_SUITE_SMALLBUSINESSVER_SUITE_SMALLBUSINESS_RESTRICTED,此值不会返回 true
OS_TERMINALSERVER 24 该程序在应用程序服务器模式下的 Windows 2000 终端服务器上运行,或在 Windows Server 2003 上运行, (或其某个后续版本) 终端服务器模式。 这等效于 VER_SUITE_TERMINAL && VER_SUITE_SINGLEUSERTS
OS_PERSONALTERMINALSERVER 25 该程序在 Windows XP (或其后续版本) 、家庭版或专业版之一上运行。 这相当于 VER_SUITE_SINGLEUSERTS && !VER_SUITE_TERMINAL
OS_FASTUSERSWITCHING 26 已启用快速用户切换。
OS_WELCOMELOGONUI 27 始终返回 FALSE
OS_DOMAINMEMBER 28 计算机已加入域。
OS_ANYSERVER 29 该程序在任何 Windows Server 产品上运行。 等效于 VER_NT_SERVER || VER_NT_DOMAIN_CONTROLLER
OS_WOW6432 30 该程序是在 64 位 Windows 上运行的 32 位程序。
OS_WEBSERVER 31 始终返回 FALSE
OS_SMALLBUSINESSSERVER 32 该程序在 Microsoft Small Business Server 上运行,并具有限制性客户端许可证。 等效于 VER_SUITE_SMALLBUSINESS_RESTRICTED
OS_TABLETPC 33 该程序在 Windows XP Tablet PC Edition 或其后续版本之一上运行。
OS_SERVERADMINUI 34 应向用户显示管理员 UI。 可以在非服务器计算机上使用服务器管理 UI。 此值通知应用程序管理员的配置文件已漫游到非服务器,并且 UI 应适合管理员。 否则,将向用户显示管理员和非管理员设置的混合。
OS_MEDIACENTER 35 该程序在 Windows XP Media Center Edition 或其后续版本之一上运行。 等效于 GetSystemMetrics (SM_MEDIACENTER) 。
OS_APPLIANCE 36 该程序在 Windows 设备服务器上运行。

返回值

类型: BOOL

如果检测到指定的操作系统或操作系统功能,则返回非零值,否则返回 FALSE

注解

未为 Windows Vista 和 Windows 7 提供值。 若要确定其中任一操作系统是否存在,请使用 VerifyVersionInfo

在早于 Windows Vista 的 Windows 版本中, IsOS 未按名称导出或在公共头文件中声明。 若要在这些情况下使用它,必须使用 GetProcAddress 并从 Shlwapi.dll 请求序号 437 来获取函数指针。 在 Windows Vista 下, IsOS 包含在 Shlwapi.h 中,这不是必需的。

引用服务器产品时,“Windows Server”仅指 Standard Edition 服务器。 如果特定标志涵盖所有服务器产品,则会在 表中显式调用它。

要求

要求
最低受支持的客户端 Windows 2000 专业版、Windows XP [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server、Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 shlwapi.h
DLL Shlwapi.dll (5.0 或更高版本)

另请参阅

GetSystemMetrics

GetVersionEx

VerifyVersionInfo