オペレーティング システムのバージョン管理

影響を受けるプラットフォーム

クライアント - Windows 7
サーバー - Windows Server 2008 R2

機能への影響

重大度 - 高
頻度 - 高

説明

Windows 7 および Windows Server 2008 R2 の内部バージョン番号は 6.1 です。 GetVersion 関数は、クエリを実行すると、このバージョン番号をアプリケーションに返すようになりました。 これは、ウイルス対策、バックアップ、ユーティリティ アプリケーション、コピー保護に特に重要です。

影響の現れ

この変更の兆候は、アプリケーション固有です。 つまり、オペレーティング システムのバージョンを特にチェックするアプリケーションのバージョン番号が高くなります。これにより、次の 1 つ以上の状況が発生する可能性があります。

  • アプリケーション インストーラーがアプリケーションをインストールできない可能性があり、アプリケーションを起動できない可能性があります
  • アプリケーションが不安定になったりクラッシュしたりする可能性がある
  • アプリケーションでエラー メッセージが生成される可能性がありますが、引き続き正常に機能する

対応策

ほとんどのアプリケーションは、Windows 7 と Windows Server 2008 R2 でのアプリケーションの互換性が非常に高いため、Windows 7 および Windows Server 2008 R2 で正しく機能します。 ただし、Windows 7 および Windows Server 2008 R2 には、オペレーティング システムのバージョンにチェックインストーラーとアプリケーションの互換性ビューが含まれています。

互換性ビューを有効にするには、ショートカットまたは実行可能ファイルを右クリックし、[互換性] タブから Windows XP SP2 または Windows Vista 互換性ビューを適用します。ほとんどの場合、これにより、アプリケーションに変更を加えることなく、アプリケーションを適切に動作させる必要があります。

IT プロフェッショナルは、アプリケーション互換性ツールキット (ACT) と共にインストールされる互換性管理者ツールを使用して、適用可能な VersionLie 互換性修正プログラムを適用することもできます。 たとえば、Windows XP® と Service Pack 2 (SP2) のバージョン情報を確認しているが見つからないためにアプリケーションが機能しない場合、WinXPSP2VersionLie を適用して、コンピューター上で実行されている実際のオペレーティング システムのバージョンに関係なく、適切なバージョン番号情報をアプリケーションに返すことができます。 使用可能な VersionLie 互換性修正プログラムは次のとおりです。

  • Win95VersionLie
  • Win98VersionLie
  • WinNT4SP5VersionLie
  • Win2000VersionLie
  • Win2000SP1VersionLie
  • Win2000SP2VersionLie
  • Win2000SP3VersionLie
  • WinXPVersionLie
  • WinXPSP1VersionLie
  • WinXPSP2VersionLie
  • VistaRTMVersionLie
  • VistaSP1VersionLie
  • VistaSP2VersionLie
  • Win2K3RTMVersionLie
  • Win2K3SP1VersionLie

解決策

一般に、アプリケーションではオペレーティング システムのバージョン チェックを実行しないでください。 アプリケーションに特定の機能が必要な場合は、その機能を検索し、必要な機能がない場合にのみ失敗することをお勧めします。 少なくとも、アプリケーションは常に、サポートされているオペレーティング システムの最も低いバージョン以上のバージョン番号を受け入れる必要があります。 例外は、特定の法的要件、ビジネス要件、またはシステム コンポーネント要件がある場合にのみ発生する必要があります。