Как программно определить, что мы под WinXP?
желательно 100% точный способ.
заранее, спасибо!
GetVersionEx
procedure TForm1.Button1Click(Sender: TObject);
var
VER:OSVERSIONINFO;
begin
VER.dwOSVersionInfoSize:=sizeof(OSVERSIONINFO);
GetVersionEx(VER);
if VER.dwBuildNumber=2600 then
ShowMessage('Windows XP');
end;
[/highlight]
Цитата: ahilles
[highlight=delphi]
procedure TForm1.Button1Click(Sender: TObject);
var
VER:OSVERSIONINFO;
begin
VER.dwOSVersionInfoSize:=sizeof(OSVERSIONINFO);
GetVersionEx(VER);
if VER.dwBuildNumber=2600 then
ShowMessage('Windows XP');
end;
[/highlight]
procedure TForm1.Button1Click(Sender: TObject);
var
VER:OSVERSIONINFO;
begin
VER.dwOSVersionInfoSize:=sizeof(OSVERSIONINFO);
GetVersionEx(VER);
if VER.dwBuildNumber=2600 then
ShowMessage('Windows XP');
end;
[/highlight]
Все-таки по номеру билда определять некорректно. Для версии ОС специально заведены поля dwMajorVersion и dwMinorVersion в той же структуре. Они должны равняться 5 и 1
Цитата: tarekon
Для версии ОС специально заведены поля dwMajorVersion и dwMinorVersion в той же структуре. Они должны равняться 5 и 1
Или 5.2 для XP x64 или серверной.