Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何使用C++;?_C++_Windows_Version - Fatal编程技术网

C++ 如何使用C++;?

C++ 如何使用C++;?,c++,windows,version,C++,Windows,Version,我看到的每个链接都会提到GetVersionEx,但这似乎不是很有帮助 我的方法是这样的 static int windowsVersion() { OSVERSIONINFO osvi; ZeroMemory(&osvi, sizeof(OSVERSIONINFO)); osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); GetVersionEx(&osvi); return osvi.dw

我看到的每个链接都会提到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的值。

您需要同时使用主版本号和次版本号

Windows Vista 6.0.6000
Windows 7 6.1.7600
我的电脑上的Windows 8 64位版本返回6.2.9200


您需要同时使用主版本号和次版本号

Windows Vista 6.0.6000
Windows 7 6.1.7600
我的电脑上的Windows 8 64位版本返回6.2.9200


:对于Windows 8,
dwMajorVersion
为6,
dwMinorVersion

:对于Windows 8,
dwMajorVersion
为6,
dwMinorVersion

为2,
dwMajorVersion
A
6
可以表示Windows Vista和更高版本的任何内容。这就是Microsoft版本控制的工作原理<用于
dwMinorVersion
的code>2应为Windows 8或Windows Server 2012。如果
wProductType==VER\u NT\u WORKSTATION
,您将获得Windows 8。所有这些都在MSDN上进行了解释。

A
6
for
dwMajorVersion
可以表示Windows Vista及以上版本的任何内容。这就是Microsoft版本控制的工作原理<用于
dwMinorVersion
的code>2应为Windows 8或Windows Server 2012。如果
wProductType==VER\u NT\u WORKSTATION
,您将获得Windows 8。所有这些都在MSDN上进行了解释。

你所说的
没有多大帮助是什么意思?@JesseGood我想知道我正在运行的是哪个windows版本。如果我运行的是Windows 8,我希望看到一种方法来实际查看Windows 8,而不是6?你说的
没有多大帮助是什么意思?@JesseGood我想知道我运行的是哪个windows版本。如果我运行的是Windows 8,我希望看到一种方法来实际查看Windows 8,而不是6?这会将其他字段归零。