• OSVERSIONINFO的用法及实例


    OSVERSIONINFO

     

    快速信息

    Windows NT   支持

    Windows 95    支持

    Win32s           支持

    引入程序库    -

    头文件           winbase.h

    Unicode         WinNT

    平台说明       无

     

    概述-系统信息

    微软的Win32应用程序编程接口(API)包含了描述当前操作系统配置的函数。

     

    所属分组

    系统信息结构体

    以下结构体均用于检索或设置系统信息。

    ANIMATIONINFO

    HW_PROFILE_INFO

    MINIMIZEDMETRICS

    NONCLIENTMETRICS

    OSVERSIONINFO

    SYSTEM_INFO

     

    使用说明

    在OSVERSIONINFO数据结构中包含操作系统版本信息。这些信息包括主要和次要版本号,一个内部版本号,一个平台标识符,以及操作系统的说明性文本。GetVersionEx函数将使用这个结构体。

     

    结构体原型:

     

    typedef struct _OSVERSIONINFO{

        DWORD dwOSVersionInfoSize;

        DWORD dwMajorVersion;

        DWORD dwMinorVersion;

        DWORD dwBuildNumber;

        DWORD dwPlatformId;

        TCHAR szCSDVersion[ 128 ];

    } OSVERSIONINFO;

     

    成员说明:

     

    dwOSVersionInfoSize

           以字节为单位,指定这个数据结构的大小。须在调用GetVersionEx(OSVERSIONINFO)函数之前,将这个成员设置为sizeof(OSVERSIONINFO)。

     

    dwMajorVersion

           标识操作系统的主版本号。例如,对于Windows NT 3.51版,其主版本号为3;对于Windows NT 4.0版,其主版本号为4。

     

    dwMinorVersion

           标识操作系统的次要版本号。例如,对于Windows NT 3.51版,其次要版本号为51;对于Windows NT 4.0版本,其次要版本号为0。

     

    dwBuildNumber

           Windows NT:标识操作系统的内部版本号。

    Windows 95:低位字标识操作系统数的内部版本号。高位字包含了主要和次要版本号。

     

    dwPlatformId

           标识操作系统平台。这个成员可以是下列值之一:

    值:                                                        平台:

    VER_PLATFORM_WIN32s                         Win32s on Windows 3.1.

    VER_PLATFORM_WIN32_WINDOWS        Win32 on Windows 95.

    VER_PLATFORM_WIN32_NT                     Win32 on Windows NT.

     

    szCSDVersion

           Windows NT:包含一个以NULL结尾的字符串,如“Service Pack 3”,就表明系统上安装了最新的Service Pack。如果没有安装Service Pack,该字符串为空。

         Windows 95:包含一个以NULL结尾的字符串,提供了对操作系统的任意补充信息。

     

    参阅:

     

           GetVersionEx

     

    int game::getsys()
    { OSVERSIONINFO stOSVI ;//一个获取操作系统版本信息的数据结构
     ZeroMemory(&stOSVI , sizeof ( OSVERSIONINFO )) ;
        stOSVI.dwOSVersionInfoSize = sizeof ( OSVERSIONINFO ) ;
        GetVersionEx ( &stOSVI);
     int a=0;
     if (stOSVI.dwPlatformId==VER_PLATFORM_WIN32_WINDOWS &&
      (stOSVI.dwMajorVersion>4||(stOSVI.dwMajorVersion==4
       && stOSVI.dwMinorVersion>0)))
     a=1;
     if (VER_PLATFORM_WIN32_NT==stOSVI.dwPlatformId&&stOSVI.dwMajorVersion>=5)
     a=2;
     if (VER_PLATFORM_WIN32_NT==stOSVI.dwPlatformId&&stOSVI.dwMajorVersion==4)
     a=3;
     if (VER_PLATFORM_WIN32_NT==stOSVI.dwPlatformId)
     a=4;
     return a;
    }

  • 相关阅读:
    装饰器的理解和使用
    策略模式的理解
    mongo 多条件or
    不止代码 == 摘读
    egret打包android + android微信登录--小结
    springboot整合mongo多数据源
    SpringBoot集成JWT 实现接口权限认证
    nginx反向代理使用网址速度变慢
    2017年2月总结
    (转)Mac os x 下配置Intellij IDEA + Tomcat 出现权限问题的解决办法
  • 原文地址:https://www.cnblogs.com/batman425/p/3191379.html
Copyright © 2020-2023  润新知