VB6 API获取 *** 作系统类型

VB6 API获取 *** 作系统类型,第1张

void CMainPage::OnBnClickedVersion()

{

typedef void (WINAPI PGNSI)(LPSYSTEM_INFO);

typedef BOOL (WINAPI PGPI)(DWORD, DWORD, DWORD, DWORD, PDWORD); 

 

 OSVERSIONINFOEX osvi;

 SYSTEM_INFO si;

 PGNSI pGNSI;

 BOOL bOsVersionInfoEx;

 ZeroMemory(&si, sizeof(SYSTEM_INFO));

 ZeroMemory(&osvi, sizeof(OSVERSIONINFOEX));

 osvidwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);

 bOsVersionInfoEx = GetVersionEx((OSVERSIONINFO ) &osvi);

 if (!bOsVersionInfoEx)

 {

  return ;

 }

 pGNSI = (PGNSI)GetProcAddress(GetModuleHandle(_T("kernel32dll")), 

  "GetNativeSystemInfo");

 if (NULL != pGNSI)

 {

  pGNSI(&si);

 }

 else

 {

  GetSystemInfo(&si);

 }

 CString strMajor;

 if ((VER_PLATFORM_WIN32_NT == osvidwPlatformId) && 

  (osvidwMajorVersion > 4))

 {

  strMajor = _T("Microsoft ");

  switch (osvidwMajorVersion)

  {

  case 6:

   if (osvidwMinorVersion == 0)

   {

    if( osviwProductType == VER_NT_WORKSTATION )

    {

     strMajor += _T("Windows Vista ");

    }

    else

    {

     strMajor += _T("Windows Server 2008 ");

    }

   }

   else if (osvidwMinorVersion == 1)

   {

    strMajor += _T("Windows 7");

   }

   if (siwProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64)

   {

    strMajor += _T(", 64 bits");

   }

   else if (siwProcessorArchitecture==PROCESSOR_ARCHITECTURE_INTEL )

   {

    strMajor += _T(", 32 bits");

   }

   break;

  case 5:

   if (osvidwMinorVersion == 2 )

   {

    if ( osviwSuiteMask==VER_SUITE_STORAGE_SERVER )

    {

     strMajor += _T("Windows Storage Server 2003");

    }

    else if ((osviwProductType == VER_NT_WORKSTATION) && 

     (siwProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64))

    {

     strMajor += _T("Windows XP Professional x64 Edition");

    }

    else

    {

     strMajor += _T("Windows Server 2003 ");

    }

    if ( osviwProductType != VER_NT_WORKSTATION )

    {

     if ( siwProcessorArchitecture==PROCESSOR_ARCHITECTURE_IA64 )

     {

      if( osviwSuiteMask & VER_SUITE_DATACENTER )

      {

       strMajor += _T("Datacenter Edition for Itanium-based Systems");

      }

      else if( osviwSuiteMask & VER_SUITE_ENTERPRISE )

      {

       strMajor += _T("Enterprise Edition for Itanium-based Systems");

      }

     }    

     else if ( siwProcessorArchitecture==PROCESSOR_ARCHITECTURE_AMD64)

     {

      if( osviwSuiteMask & VER_SUITE_DATACENTER )

      {

       strMajor += _T( "Datacenter x64 Edition");

      }

      else if( osviwSuiteMask & VER_SUITE_ENTERPRISE )

      {

       strMajor += _T( "Enterprise x64 Edition");

      }

      else

      {

       strMajor += _T( "Standard x64 Edition");

      }

     }

     else

     {

      if ( osviwSuiteMask & VER_SUITE_COMPUTE_SERVER )

      {

       strMajor += _T( "Compute Cluster Edition");

      }

      else if( osviwSuiteMask & VER_SUITE_DATACENTER)

      {

       strMajor += _T( "Datacenter Edition");

      }

      else if( osviwSuiteMask & VER_SUITE_ENTERPRISE )

      {

       strMajor += _T( "Enterprise Edition");

      }

      else if ( osviwSuiteMask & VER_SUITE_BLADE)

      {

       strMajor += _T( "Web Edition");

      }

      else

      {

       strMajor += _T( "Standard Edition");

      }

     }

    }

   }

   else if (osvidwMinorVersion == 1)

   {

    strMajor += _T("Windows XP ");

    if( osviwSuiteMask & VER_SUITE_PERSONAL )

    {

     strMajor += _T( "Home Edition");

    }

    else

    {

     strMajor += _T( "Professional");

    }

   }

   else if (osvidwMinorVersion == 0)

   {

    strMajor += _T("Windows 2000 ");

    if ( osviwProductType == VER_NT_WORKSTATION )

    {

     strMajor += _T( "Professional");

    }

    else

    {

     if( osviwSuiteMask & VER_SUITE_DATACENTER )

     {

      strMajor += _T( "Datacenter Server");

     }

     else if( osviwSuiteMask & VER_SUITE_ENTERPRISE )

     {

      strMajor += _T( "Advanced Server");

     }

     else

     {

      strMajor += _T( "Server");

     }

    }

   }

   break;

  default:

   strMajor = _T("未知版本");

   break;

  }

 }

 CString strBuild;

 if( _tcslen(osviszCSDVersion) > 0 )

 {

  strBuild = osviszCSDVersion;

 }

 CString strResult;

 strResultFormat(_T("%s %s build %d"), strMajor, strBuild, osvidwBuildNumber);

 AfxMessageBox(strResult);

C++代码,给你参考了

eclipse中升级api实质上是配置高版本的jdk。

1、找到window --> preferences选项,如图所示

2、在新d出界面选择Java --> Installed JREs,先不管当前的配置,选择ADD

注意:此处如果原来是jdk6,可以选择比6更高的7、8或者9

ADT(Android Development Tools): 目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。adt只是一个eclipse的插件,里面可以设置sdk路径。可以没有ADT,但必须有SDK。ADT版本和Platform没有必然关系,(有一点儿,有些版本ADT只能安装在不同版本的Eclipse上),受SDK影响较大,基本上新版SDK发布之后,会有对应的ADT更新。

SDK(Software Development Kit): 一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、 *** 作系统等建立应用软件的开发工具的集合。在Android中,他为开发者提供了库文件以及其他开发所用到的工具。简单理解为开发工具包集合,是整体开发中所用到的工具包,如果你不用Eclipse作为你的开发工具,你就不需要下载ADT,只下载SDK即可开发。SDK可以自己编译,在linux环境下通过make命令进行,耗时比较长。然后我们可以把自己编译的SDK通过ADT导入eclipse。在此基础上可以对源码包进行修改,比如修改android system/app/phoneapk中的源码,然后再次调用make命令,就可以产生新的systemimage文件,此文件是镜像文件。

Android平台与SDK Tools版本、ADT版本的对应关系

Android平台 SDK Tools的版本 ADT版本

Android 22 R7 ADT-099

Android 23 R8 ADT-801

Android 30 预览版 R9 ADT-900

Android 30 R10 ADT-1000

Android 31 R11 ADT-1100

Android 32 R12 ADT-1200

Android 40 R14 ADT-1400

SDK 平台版本,以及API版本

Android平台 API 级别

Android 2011 API6

Android 21-update1 API7

Android 22 API8

Android 23 API9

Android 233 API10

Android 30 API11

Android 31 API12

Android 32 API13

Android 40 API14

以此类推

随着版本的更迭,应用程序编程接口(API)等级不断发生。

下面将目前为止所有API等级罗列出来,并与Android各版本一一对应。

API等级1:Android 10

API等级2:Android 11 Petit Four

API等级3:Android 15 Cupcake

API等级4:Android 16 Donut

API等级5:Android 20 Éclair

API等级6:Android 201 Éclair

API等级7:Android 21 Éclair

API等级8:Android 22 - 223 Froyo

API等级9:Android 23 - 232 Gingerbread

API等级10:Android 233-237 Gingerbread

API等级11:Android 30 Honeyb

API等级12:Android 31 Honeyb

API等级13:Android 32 Honeyb

API等级14:Android 40 - 402 Ice Cream Sandwich

API等级15:Android 403 - 404 Ice Cream Sandwich

API等级16:Android 41 Jelly Bean

API等级17:Android 42 Jelly Bean

API等级18:Android 43 Jelly Bean

API等级19:Android 44 KitKat

API等级20:Android 44W

API等级21:Android 50 Lollipop

API等级22:Android 51 Lollipop

API等级23:Android 60 Marshmallow

Linux内核API文档可以在官方网站上找到。Linux内核API文档包括内核函数、数据类型、宏定义等内容,可以在Linux官方网站的文档页面中找到。这些文档通常包含了针对不同内核版本的API接口,可以帮助开发人员编写和调试Linux内核驱动程序。另外,也可以通过阅读相关的书籍和网络教程来学习和理解Linux驱动开发的相关知识和技术。

以上就是关于VB6 API获取 *** 作系统类型全部的内容,包括:VB6 API获取 *** 作系统类型、eclipse中的API怎么升级、android 版本,sdk版本,adt版本,api版本 都是什么关系等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9309087.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存