日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

用VC判斷軟件運用的設置系統

用VC判斷軟件運用的設置系統

更新時間:2022-05-01 文章作者:未知 信息來源:網絡 閱讀次數:

杜建蔚

  在開發軟件時,由于在不同的操作系統中實現技術上的區別,可能某一軟件的功能僅局限于單一的操作系統環境,例如Windows98或是WindowsNT,為此,我們需要在用戶使用軟件時給予相應提示。

  我們需要編寫一段小程序用于在軟件啟動時來判斷當前軟件所運行的環境到底是哪個操作系統,并當用戶在錯誤的環境中運行軟件時給予報警。本文將詳細介紹實現的方法及過  
程。

  OSVERSIONINFO結構

  OSVERSIONINFO結構包含了操作系統的版本信息,包括操作系統的主版本號、副版本號、創建號、以及操作系統平臺ID號和關于操作系統的其他描述信息。其定義為:

  typedef struct _OSVERSIONINFO{

  DWORD dwOSVersionInfoSize;

  //指定該數據結構的字節大小

  DWORD dwMajorVersion;

  //操作系統的主版本號

  DWORD dwMinorVersion;

  //操作系統的副版本號

  DWORD dwBuildNumber;

  //操作系統的創建號

  DWORD dwPlatformId;

  //操作系統ID號

  TCHAR szCSDVersion[ 128 ];

  //關于操作系統的一些附加信息

  } OSVERSIONINFO;

  其中dwPlatformId可為以下值:

  VER_PLATFORM_WIN32s:標識為Windows 3.1;

  VER_PLATFORM_WIN32_WINDOWS:標識為Windows 95或Windows 98;

  對于Windows 95操作系統而言,dwMinorVersion值為0,對Windows 98操作系統dwMinorVersion則大于0;

  VER_PLATFORM_WIN32_NT:標識為WindowsNT。

  程序具體實現步驟

  1.使用AppWizard新建一個基于單文檔的工程SystemJudge。

  2.在工程中添加兩個文件,即定義文件judge.h和實現文件judge.cpp。

  在judge.h文件中添加如下代碼:

  #ifndef __JUDGE_H__

  #define __ JUDGE _H__

  Cstring JudgeOperatingSystem();

  //判斷操作系統函數定義

  #endif

  在judge.cpp文件中添加如下代碼:

  #include "stdafx.h"

  #include "judge.h"

  Cstring JudgeOperatingSystem()

  //判斷操作系統函數的實現

  {

  OSVERSIONINFO OsVersionInfo;

  OsVersionInfo.dwOSVersionInfoSize=sizeof(OSVERSIONINFO);

  GetVersionEx(&&OsVersionInfo);

  if(OsVersionInfo.dwPlatformId=VER_PLATFORM_WIN32_WINDOWS )

   {

   if(OsVersionInfo.dwMajorVersion>4) return "Windows98";

  else if(OsVersionInfo.dwMajorVersion=4)

   {

   if(OsVersionInfo.dwMinorVersion>0) return "Windows98";

  else return "Windows95";

   }

   else return "Windows3.1";

   }

  elseif(OsVersionInfo.dwPlatformId= VER_PLATFORM_WIN32_NT )

   {

   return "WindowsNT";

   }

   else if(OsVersionInfo.dwPlatformId== VER_PLATFORM_WIN32s)

   {

   return "Windows3.1";

   }

   else return "NoName";

  }

  3.在CmainFrame類的實現文件MainFrm.cpp中開頭添加#include"judge.h"。并在其OnCreate函數中return語句前加入如下判斷代碼:

  Cstring sOperatingSystem = JudgeOperatingSystem();

  if( sOperatingSystem == "Windows98")

  {

  //假如本軟件需要在WindowsNT下運行

  MessageBox(

   "本軟件在WindowsNT4.0或更高的版本下運行,您的操作系統是Windows98 "

  "請安裝WindowsNT4.0以上的版本或使用Windows98版!",

  "警告",

  MB_OK

  );

  }

   else if( sOperatingSystem == "WindowsNT")

   {

   //假如軟件需要在Windows98下運行,我們可在此添加警告對話框

   }

   else return -1;

  至此,操作系統判斷功能已經實現,在軟件啟動時會自動判斷軟件當前運行的操作系統并提示用戶是否在正確的操作系統環境,從而保證了軟件運行的正常性。

  本程序在VC++ 6.0,Windows 98下調試通過。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

主站蜘蛛池模板: 欧美一级高清片欧美国产欧美 | 精品欧美一区二区精品久久 | 天天爱天天爽 | 久久综合综合久久狠狠狠97色 | 国产在线拍揄自揄视频不卡99 | 欧美视频免费在线 | 99热6这里只有精品 99热99re8国产在线播放 | 天堂草原视频在线观看 | 91精品国产一区二区三区左线 | 色很久| 国产yw.8825.c免费 | 久久99热不卡精品免费观看 | 欧美成人天天综合天天在线 | 91视频综合网 | 久久精品视频免费在线观看 | 久久国产成人亚洲精品影院老金 | 精品免费久久 | 久久伊人中文字幕有码 | 99伊人| 1024国产高清精品推荐 | 免费高清欧美一区二区视频 | 国产日本久久久久久久久婷婷 | 日韩 欧美 国产 师生 制服 | 中文字幕第一页国产 | 国产永久在线观看 | 国产91在线 | 中文 | 综合久久精品 | 成人免费高清 | 日本色影院| 成人国产网站 | aⅴ在线免费观看 | 美女啪啪网站 | 久久久久久综合 | 亚洲精品成人中文网 | 水户香奈在线播放 | 欧美日韩亚洲综合 | 日韩精品一区二区三区 在线观看 | 蜜桃精品在线 | 爆操波多野结衣 | 欧美三级免费 | 国产成人一区二区三区在线播放 |