Главная страница
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.022 c
14-1078843781
Dlorean
2004-03-09 17:49
2004.04.04
Полетела файловая система FAT32!


8-1070710296
Astarot
2003-12-06 14:31
2004.04.04
Модем + звук + телефон


3-1078402608
Duncann
2004-03-04 15:16
2004.04.04
Про ODBC


3-1078875784
Anarki
2004-03-10 02:43
2004.04.04
Как загрузить все данные одного поля в Combobox?


4-1075037380
serfom
2004-01-25 16:29
2004.04.04
Как украсть текст из Edit a чужого приложения!