Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Как программно узнать установлен ли DirectX ?   Найти похожие ветки 

 
comwad ©   (2003-11-28 06:42) [0]

Нашел в книге (DIRECTX Графика в проектах Delphi - Михаил Краснов) предлагаемую функцию? (см.ниже)
Но она естественно вызывает исключение и на экран выходит некрасивая ошибка типа не найдена иочка входа в процедуру.....
Как можно сделать красиво?
Может быть через реестр?

Function TVideoScanForm.FindDirectX:Boolean;
var
 FDD : IDirectDraw7;
 hRet : HRESULT;
begin

 FDD := nil;
 try
 try

 hRet := DirectDrawCreateEx (nil, FDD, IDirectDraw7, nil);
 if Failed (hRet)
    then
     Begin

       Result:=False;
     End
    else Result:= True;
 finally
 if Assigned (FDD) then FDD := nil;
 end;
 except

 Result:=False;
 end;
end;


 
Думкин ©   (2003-11-28 07:28) [1]

Какая винда и какой директ установлен?


 
Sapersky ©   (2003-11-28 09:56) [2]

В заголовках для каждого компонента DX есть переменная-handle соответствующей DDL-ки (для DirectDraw это, например, DDrawDLL). В секции инициализации делается попытка загрузить эту DLL-ку и получить адреса процедур типа xxxCreate (DirectDrawCreateEx и пр.). Если DX не установлен, DLL-ка не загрузится. Так что нужно просто проверять:

If DDrawDLL=0 then ShowMessage("DirectX not found");



Страницы: 1 вся ветка

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
14-1078933866
menart
2004-03-10 18:51
2004.04.04
Рыбалка :)


3-1077634776
cluBDEndy
2004-02-24 17:59
2004.04.04
"could not find object", но вай?!


7-1075011474
deivan
2004-01-25 09:17
2004.04.04
через СОМ1 данные гонять


4-1074689573
prt
2004-01-21 15:52
2004.04.04
Цвет рабочего стола


14-1078725422
Мазут Береговой
2004-03-08 08:57
2004.04.04
Присоединяюсь к Игорю Шевченко... и подарок...