私が見るすべてのリンクには常に GetVersionEx が記載されていますが、あまり役に立ちません。
私の方法は次のようになります。
static int windowsVersion() {
OSVERSIONINFO osvi;
ZeroMemory(&osvi, sizeof(OSVERSIONINFO));
osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
GetVersionEx(&osvi);
return osvi.dwMajorVersion;
}
私はWindows 8を実行していますが、代わりに6を返します。
Windows のバージョンを正確に取得しようとしても、あまり役に立ちません。
注: 他のすべての変数もチェックしました。dwMinorVersion は 4 を返し、ビルド番号は 8400 のような値を返します。