IsOS 函数 (shlwapi.h)
检查指定的操作系统和操作系统功能。
语法
BOOL IsOS(
[in] DWORD dwOS
);
参数
[in] dwOS
类型:DWORD
一个 值,指定要为其检查哪个操作系统或操作系统功能。 以下值之一 (不能将值组合) 。
名称 | 值 | 说明 |
---|---|---|
OS_WINDOWS | 0 | 该程序在以下 Windows 版本之一上运行:
|
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_ENTERPRISE、VER_SUITE_SMALLBUSINESS或VER_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 或更高版本) |