It's strange that version compare does not work as intended here:
Dim MySearcher As New ManagementObjectSearcher("root\CIMV2", "SELECT * FROM Win32_OperatingSystem")
For Each MyQuery As ManagementObject In MySearcher.Get()
MyVersion = DirectCast(MyQuery("Version"), String)
If Version.op_GreaterThanOrEqual(Version.Parse(MyVersion), Version.Parse(My.Computer.Info.OSVersion)) = True Then ...
The difference is a leading .0 although I don't know why this op_GreaterThanOrEqual is not showing by Visual Studio, kinda hidden or better way to compare 2 versions?