本文整理自网络,侵删。
function GetWindowsVersionString: AnsiString;
var
VI: TOSVersionInfoA;
begin
VI.dwOSVersionInfoSize := SizeOf(TOSVersionInfoA);
if GetVersionExA(@VI) then
with VI do
Result := Trim(
Format(
'%d.%d build %d %s',
[dwMajorVersion, dwMinorVersion, dwBuildNumber, szCSDVersion]
)
)
else
Result := '';
end;
function GetWindowsVersion: String; //读取操作系统版本
var
AWin32Version: Extended;
os:string;
begin
os:='Windows ';
AWin32Version := StrtoFloat(format('%d.%d' ,[Win32MajorVersion, Win32MinorVersion]));
if Win32Platform=VER_PLATFORM_WIN32s then
Result := os + '32'
else if Win32Platform=VER_PLATFORM_WIN32_WINDOWS then
begin
if AWin32Version=4.0 then
Result := os + '95'
else if AWin32Version=4.1 then
Result := os + '98'
else if AWin32Version=4.9 then
Result := os + 'Me'
else
Result := os + '9x'
end
else if Win32Platform = VER_PLATFORM_WIN32_NT then
begin
if AWin32Version=3.51 then
Result := os + 'NT 3.51'
else if AWin32Version=4.0 then
Result := os + 'NT 4.0'
else if AWin32Version=5.0 then
Result := os + '2000'
else if AWin32Version=5.1 then
Result := os + 'XP'
else if AWin32Version=5.2 then
Result := os + '2003'
else if AWin32Version=6.0 then
Result := os + 'Vista'
else if AWin32Version=6.1 then
Result := os + '7'
else if AWin32Version=6.2 then
Result := os + '8'
else if AWin32Version=6.3 then
Result := os + '8.1'
else if AWin32Version=6.4 then
Result := os + '10'
else
Result := os ;
end
else
Result := os + '??';
Result:=Result + ' '+GetWIndowsVersionString;
end;
相关阅读 >>
Delphi �c 如何将多个文件扩展名传递给tdirectory.getfiles?
Delphi firedac 下的 sqlite [12] - 备忘录
Delphi android ios 获取packagename
winapi 字符及字符串函数(13): lstrcmp、lstrcmpi - 对比串
winapi 字符及字符串函数(6): ischaralphanumeric - 是否是个文字(字母或数字)
Delphi strutils.dupestring - 反复字符串
更多相关阅读请进入《Delphi》频道 >>