Hey Y'all,

I ran across this interesting little anomaly while testing out some code today!
Code:
Get-CimClass -PropertyName version -QualifierName dynamic
Clear-Host
$CurOS = Get-CimInstance Win32_OperatingSystem
$CurOS

<#  -------  Sample Output Win 8.1  -------------
SystemDirectory : C:\WINDOWS\system32
Organization    : 
BuildNumber     : 9600
RegisteredUser  : Bruce
SerialNumber    : 00178-11197-21867-AB377
Version         : 6.3.9600
#>

$CurOS | Select Caption,Version,RegisteredUser | Format-List

<#  -------  Sample Output Win 8.1  -------------
Caption        : Microsoft Windows 8.1 Pro
Version        : 6.3.9600
RegisteredUser : Bruce
#>

[System.Environment]::OSVersion.Version | Format-List

<#  -------  Sample Output Win 8.1  -------------
Major         : 6
Minor         : 2      <--- Error
Build         : 9200   <--- Error
Revision      : 0
MajorRevision : 0
MinorRevision : 0
#>
So why does [System.Environment]::OSVersion.Version return the wrong Minor Version and Build numbers?

Inquiring minds want to know...and so do I.