procedure TForm1.Button2Click(Sender: TObject);
var
OsInfo: TOSVersionInfo;
const
s = '主编号: %d' + sLineBreak +
'次编号: %d' + sLineBreak +
'建立编号: %d' + sLineBreak +
'作业平台: %d' + sLineBreak +
'更多说明: %s';
begin
OsInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo); {先根据大小要内存}
GetVersionEx(OsInfo);
ShowMessage(Format(s, [OsInfo.dwMajorVersion,
OsInfo.dwMinorVersion,
OsInfo.dwBuildNumber,
OsInfo.dwPlatformId,
OsInfo.szCSDVersion]));
end;
Delphi2007,XE2下居然均返回6.1,而在最新的Delphi10.x下是正常的,可以取到正确的10.0 百度了一下,找到原因:
原来是微软搞的鬼