• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

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

        用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下調試通過。

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

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 亚洲男人第一无码aⅴ网站| 日本高清免费中文字幕不卡| 亚洲国产主播精品极品网红| 成人精品国产亚洲欧洲| 在线观看免费污视频| 亚洲午夜在线播放| 国产成人无码免费看视频软件| 亚洲国产精品成人精品小说| 91精品免费久久久久久久久| 亚洲国产综合自在线另类| 福利免费观看午夜体检区| 亚洲国产视频久久| 国产一区二区三区无码免费| 久久精品亚洲福利| 9久热精品免费观看视频| 亚洲色成人网站WWW永久| 国产精品免费无遮挡无码永久视频 | 中国在线观看免费国语版| 亚洲欧洲另类春色校园网站| 毛片a级毛片免费播放100| 亚洲精品人成网线在线播放va| 精品久久免费视频| 午夜成人无码福利免费视频| 亚洲精品蜜桃久久久久久| **真实毛片免费观看| 久久久久亚洲AV无码专区网站| 两性色午夜视频免费网| 免费无码又爽又刺激高潮| 国产亚洲Av综合人人澡精品| 亚洲一区二区三区香蕉| 一级毛片在线观看免费| 亚洲一本一道一区二区三区| 亚洲国产精品国产自在在线| 亚洲a一级免费视频| 亚洲综合无码一区二区痴汉| 亚洲精品无码av天堂| 久久大香伊焦在人线免费| 亚洲人成色77777在线观看| 亚洲无码在线播放| 成人毛片免费在线观看| 久久国产福利免费|