最近在windows 8上獲取系統版本資訊需要呼叫系統api,於是用到了getversionex。
首先看一看函式原型:
[cpp]view plain
copy
bool
getversionex(posversioninfo pversioninformation);
結構osversioninfoex定義如下:
[cpp]view plain
copy
typedef
struct
osversioninfoex, *posversioninfoex;
接著在呼叫函式之前先初始化結構的大小並呼叫函式,返回true表示成功:
[cpp]view plain
copy
osversioninfoex os;
os.dwosversioninfosize=sizeof
(os);
if(!getversionex((osversioninfo *)&os))
函式呼叫成功以後就可以通過osversioninfoex來檢視系統的版本資訊了。
根據微軟作業系統編號發現windows 8 對應的windows version number是6.2
如下:
operating system
version number
windows 8
6.2windows 7
6.1windows server 2008 r2
6.1windows server 2008
6.0windows vista
6.0windows server 2003 r2
5.2windows server 2003
5.2windows xp
5.1windows 2000
5.0下面是乙個通過系統版本來判斷作業系統名稱的例子:
[cpp]view plain
copy
cstring getsystemname()
break
; case
5:
switch
(os.dwminorversion)
break
; case
6:
switch
(os.dwminorversion)
break
; default
: vname=_t("未知作業系統"
);
} return
vname;
} else
return
_t(""
);
}
以上只能判斷作業系統的名稱,那如何判斷它是什麼版本的呢(如home版或professional版)。
下面這個函式就返回具體的版本名稱:
[cpp]view plain
copy
cstring getversionmark()
break
; case
6:
switch
(os.dwminorversion)
break
; default
: vmark=_t(""
);
} return
vmark;
} else
return
_t(""
);
}
另外,作業系統的補丁包名稱也可以從szcsdversion直接獲取。
使用ALAssertLibrary獲取系統相簿
使用alassertlibrary必須要開啟系統定位,先判斷是否可以使用 iscanreadalasset yes void assetgroupenumerator alassetsgroup bool alassetsgroup group,bool stop group enumerator ...
GDAL獲取投影座標系注意問題
gdal提供了獲取投影座標系的c函式gdalgetprojectionref以及對應的c 函式getprojectionref,但在獲取投影座標系之前需要設定通過cplsetconfigoption函式設定 gdal data 環境變數,例如 cplsetconfigoption gdal data...
系 WEB系 泛用系 制御系 組込 系
泛用系 泛用的 使 方 言 意味 泛用計算機 銀行 基干係 使用 仕事 指 系 同義 最近 大型 等 呼 人 注意要 系 規格 沿 作 計算機 仕事。現在 windows 系 同義。系 言葉 既存 大型計算機 開発元 個 os 開発 他 互換性 獨佔市場 食 込 使 始 言葉 全然 windows ...