Как узнать версию DirectX?

Delphi FAQ >> Система

uses Registry;

function GetDirectXVersion(var major, minor: Word): Boolean;
var
  Reg: TRegistry;
  str: String;
  res: Boolean;
begin
  str := ''
  res := false;
  major := 0;
  minor := 0;
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_LOCAL_MACHINE;
    if Reg.OpenKey(’\Software\Microsoft\DirectX’, False) then
    begin
      res := true;
      str := Reg.ReadString(’Version’);
    end;
  finally
    Reg.CloseKey;
    Reg.Free;
  end;
  if res then
  begin
    Delete(str, 1, POS(’.', str));
    Major := StrToInt(Copy(str, 1, POS(’.', str)-1));
    Delete(str, 1, POS(’.', str));
    Minor := StrToInt(Copy(str, 1, POS(’.', str)-1));
  end;
  GetDirectXVersion := res;
end;