【Windows】Windows中判断版本号【redis优秀案例】

cpp 复制代码
#include <Windows.h>

bool IsWindowsVersionAtLeast(WORD wMajorVersion, WORD wMinorVersion, WORD wServicePackMajor);

bool IsWindowsVersionAtLeast(WORD wMajorVersion, WORD wMinorVersion, WORD wServicePackMajor) {
    OSVERSIONINFOEXW osvi = {sizeof(osvi), 0, 0, 0, 0, {0}, 0, 0};
    DWORDLONG const dwlConditionMask = VerSetConditionMask(
        VerSetConditionMask(
        VerSetConditionMask(
        0, VER_MAJORVERSION, VER_GREATER_EQUAL),
        VER_MINORVERSION, VER_GREATER_EQUAL),
        VER_SERVICEPACKMAJOR, VER_GREATER_EQUAL);

    osvi.dwMajorVersion = wMajorVersion;
    osvi.dwMinorVersion = wMinorVersion;
    osvi.wServicePackMajor = wServicePackMajor;

    return VerifyVersionInfoW(&osvi, VER_MAJORVERSION | VER_MINORVERSION | VER_SERVICEPACKMAJOR, dwlConditionMask) != FALSE;
}


class WindowsVersion {
private:
    bool isAtLeast_6_0;/* 一般windows7, 如:6.1.6701 */
    bool isAtLeast_6_2;/* 一般windows8, 如:6.2.6900 */
	/* 可以继续添加期望判断的版本, windows10: 10.0.19045 */

    WindowsVersion() {
        isAtLeast_6_0 = IsWindowsVersionAtLeast(6, 0, 0);
        isAtLeast_6_2 = IsWindowsVersionAtLeast(6, 2, 0);
    }

    WindowsVersion(WindowsVersion const&);      // Don't implement to guarantee singleton semantics
    void operator=(WindowsVersion const&);      // Don't implement to guarantee singleton semantics

public:
    static WindowsVersion& getInstance() {
        static WindowsVersion instance;         // Instantiated on first use. Guaranteed to be destroyed.
        return instance;
    }

    bool IsAtLeast_6_0() {
        return isAtLeast_6_0;
    }

    bool IsAtLeast_6_2() {
        return isAtLeast_6_2;
    }
};

在 Windows 上,可以使用以下方法之一来查看操作系统的版本号:

  1. 使用 "winver" 命令:

    • 打开 "运行" 对话框,可以通过按下 Win + R 快捷键来打开。
    • 在对话框中输入 "winver",然后点击 "确定"。
    • 弹出的 "关于 Windows" 窗口中,会显示操作系统的版本号和详细信息。
  2. 使用 "系统信息" 工具:

    • 打开 "运行" 对话框。
    • 输入 "msinfo32",然后点击 "确定"。
    • 打开的 "系统信息" 窗口中,可以在 "操作系统名称" 和 "版本" 字段中找到操作系统的版本号。
  3. 使用 "命令提示符" 或 "PowerShell":

    • 打开 "命令提示符" 或 "PowerShell"。

    • 输入以下命令并按下回车:

      复制代码
      systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本"
    • 输出中的 "OS 名称" 和 "OS 版本" 行将显示操作系统的名称和版本号。

这些方法可以帮助您在 Windows 上方便地查看操作系统的版本号。

相关推荐
pVPkTAeVGPdZ1 小时前
码垛机器人分析与仿真:基于Matlab Simulink Simscape的探索
windows
一点事2 小时前
windows:安装rabbitMQ
windows·rabbitmq·ruby
SunkingYang3 小时前
Windows系统怎么修改系统文件如user32.dll的控制权限(无法保存对xxx权限所做的更改,拒绝访问,怎么处理)
windows·系统文件·控制权限修改·无法保存·拒绝访问
yaoxin5211233 小时前
296. Java Stream API - 二元操作符与“单位元“
java·服务器·windows
用什么都重名4 小时前
Conda 虚拟环境安装配置路径详解
windows·python·conda
万行7 小时前
企业级前后端认证方式
前端·windows
cws2004017 小时前
MFA双因素用户使用手册
运维·windows·网络安全·github·邮件·邮箱
billy_gisboy8 小时前
01-Windows+DockerDesktop部署ClickHouse
windows·clickhouse
2501_944424129 小时前
Flutter for OpenHarmony游戏集合App实战之黑白棋落子翻转
android·开发语言·windows·flutter·游戏·harmonyos
Calebbbbb10 小时前
Windows 向 Vmware Ubuntu 传大文件校验不一致问题完整排查记录
linux·windows·ubuntu