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 またはその後続の 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_ENTERPRISE、VER_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 以降) |