zoukankan      html  css  js  c++  java
  • 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;
    }

  • 相关阅读:
    250 浅拷贝Object.assign(target, ...sources),深拷贝
    249 递归:概念,利用递归求1~n的阶乘,利用递归求斐波那契数列,利用递归遍历数据
    248 闭包:概念,作用,案例,思考题案例,chrome 中调试闭包
    247 高阶函数 之 函数可以作为参数传递
    246 JavaScript严格模式
    245 改变函数内部 this 指向:call,apply,bind,call、apply、bind 三者的异同
    244 函数内部的this指向:6种
    243 函数:函数的3种定义方式,函数的6种调用方式
    242 Object.defineProperty
    241 获取对象的属性名:Object.keys(对象)
  • 原文地址:https://www.cnblogs.com/rosesmall/p/4939510.html
Copyright © 2011-2022 走看看