閱讀英文

共用方式為


IsOS 函式 (shlwapi.h)

檢查指定的作業系統和作業系統功能。

語法

BOOL IsOS(
  [in] DWORD dwOS
);

參數

[in] dwOS

類型: DWORD

值,指定要檢查的作業系統或操作系統功能。 下列其中一個值 (您無法結合值) 。

名稱 Description
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 Server 2003 (的 Windows 2000 終端機伺服器上執行,或其後續專案之一) 在遠端桌面 for Administration 模式中執行, (這些是預設安裝模式) 。 這相當於 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_DATACENTERVER_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 (或其後續) 、Home Edition 或 Professional 的其中一個後續任務上執行。 這相當於 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 Professional、Windows XP [僅限桌面應用程式]
最低支援的伺服器 Windows 2000 Server、Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 shlwapi.h
Dll Shlwapi.dll (5.0 版或更新版本)

另請參閱

GetSystemMetrics

GetVersionEx

VerifyVersionInfo