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 またはその後続の 1 つで実行されています。
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 (またはその後継の 1 つ) で実行されています。 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 ターミナル サーバー、またはリモート デスクトップ for Administration モード (既定のインストール モード) の Windows Server 2003 (またはその後継プログラムの 1 つ) で実行されています。 これは、 && VER_SUITE_SINGLEUSERTS VER_SUITE_TERMINALと同じです。
OS_WIN95_GOLD 16 常に FALSE を返します
OS_MEORGREATER 17 常に FALSE を返します
OS_XPORGREATER 18 常に FALSE を返します
OS_HOME 19 常に FALSE を返します
OS_PROFESSIONAL 20 プログラムは、Windows NT ワークステーションまたは Windows 2000 (またはその後継者の 1 つ) Professional で実行されています。 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_SMALLBUSINESSまたはVER_SUITE_SMALLBUSINESS_RESTRICTEDでは true を返しません。
OS_TERMINALSERVER 24 プログラムは、アプリケーション サーバー モードの Windows 2000 ターミナル サーバー、またはターミナル サーバー モードの Windows Server 2003 (またはその後続プログラムの 1 つ) で実行されています。 これは、 && VER_SUITE_SINGLEUSERTS VER_SUITE_TERMINALと同じです。
OS_PERSONALTERMINALSERVER 25 プログラムは、Windows XP (またはその後継者の 1 つ)、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 タブレット PC エディション、またはその後継者の 1 つで実行されています。
OS_SERVERADMINUI 34 ユーザーに管理者 UI が表示されます。 サーバー以外のコンピューターにサーバー管理 UI を設定できます。 この値は、管理者のプロファイルがサーバー以外に移動し、UI が管理者に適していることをアプリケーションに通知します。 それ以外の場合、ユーザーには管理者と管理者以外の設定の組み合わせが表示されます。
OS_MEDIACENTER 35 プログラムは、Windows XP Media Center Edition またはその後続プログラムの 1 つで実行されています。 GetSystemMetrics(SM_MEDIACENTER) と同等です。
OS_APPLIANCE 36 プログラムは Windows アプライアンス サーバーで実行されています。

戻り値

種類: BOOL

指定したオペレーティング システムまたはオペレーティング システムの機能が検出された場合は 0 以外の値を返します。それ以外の場合は 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