C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 5 - Функция DirectDrawCreate / DirectDraw / Microsoft DirectX

Шаг 5 - Функция DirectDrawCreate

Первое что мы должны сделать, это создать объект DirectDraw. В любом языке программирования. Создаем мы объект для получения доступа к интерфейсу DirectDraw. тут один важный нюанс. При создании объекта мы должны указывать GUID драйвера. Но это если мы хотим работать с конкретной версией. Если его оставить NULL то будет выбрана текущая версия, которая установлена у Вас на компьютере. Кроме того данная функция вернет результат. Конечно мы хотим положительный результат. Ниже в зависимости от среды разработки мы создадим функцию InitDirectDraw которая будет производить создания объекта DirectDraw и возвращать успешность этой операции. Если не удалось создать объект DirectDraw, то что дальше то делать. Дальше часто предлагают произвести инсталляцию DirectX.

Visual Basic
Visual C++

Visual Basic

Описание функции
DirectX7.DirectDrawCreate метод создает объект DirectDraw7.

object.DirectDrawCreate(guid As String) As DirectDraw7

Параметры
Object
Объектная переменная к объекту DirectX7.
Guid
Адрес глобально уникального идентификатора (GUID), который представляет драйвер, который будет создан. Это может быть пустая строка, чтобы указать активный драйвер дисплея, или Вы можете передавать один из следующих флажков, чтобы ограничить активное поведение драйвера дисплея для целей отладки:

 
DDCREATE_EMULATIONONLY  	Объект DirectDraw использует эмуляцию для всех свойств, не будут использоваться 
			преимущества  аппаратных средств. 
DDCREATE_HARDWAREONLY   	Объект DirectDraw никогда не будет использовать свойства  не обеспечиваемые 
			аппаратными средствами. При попытке вызывать метод  который не поддерживается, вызов 
			терпит неудачу, возвращая DDERR_UNSUPPORTED.

Возвращаемое значение
Если метод успешен, ссылка к объекту DirectDraw7 возвращена.

Ошибки
Если создание не успешно, то будет сгенерирована ошибка и код установлен в Err.Number

Visual C++

Описание функции
Функция DirectDrawCreate создает образец объекта DirectDraw. Объект DirectDraw, созданный с этой функцией не поддерживает самый новый набор интерфейсов Direct3D. Чтобы создавать объект DirectDraw, способныe к использованию новых свойств Direct3D, используйте функцию DirectDrawCreateEx.

HRESULT WINAPI DirectDrawCreate
(
  GUID FAR *lpGUID,        
  LPDIRECTDRAW FAR *lplpDD,  
  IUnknown FAR *pUnkOuter  
); 

Параметры
lpGUID
Адрес глобально уникального идентификатора (GUID), который представляет драйвер, который будет создан. Может быть NULL, чтобы указать активный драйвер дисплея, или Вы можете передавать один из следующих флажков, чтобы ограничить активное поведение драйвера дисплея для отладки целей:

  • DDCREATE_EMULATIONONLY - Объект DirectDraw использует эмуляцию для всех свойств, не будут использоваться преимущества аппаратных средств.
  • DDCREATE_HARDWAREONLY - Объект DirectDraw никогда не будет использовать свойства не обеспечиваемые аппаратными средствами. При попытке вызывать метод, который не поддерживается, вызов терпит неудачу, возвращая DDERR_UNSUPPORTED.

lplpDD
Адрес переменной, которая будет установлена к допустимому IDirectDraw указателю интерфейса, если вызов функции удачный.
pUnkOuter
Учитывает будущую совместимость с COM свойствами агрегации. Сейчас этот метод возвращает ошибку, если этот параметр не NULL.

Возвращаемое значение.
Если функция успешна, возвращаемое значение - DD_OK.
Если она терпит неудачу, функция может возвращать одно из следующих значений ошибки:

DDERR_DIRECTDRAWALREADYCREATED  
DDERR_GENERIC  
DDERR_INVALIDDIRECTDRAWGUID  
DDERR_INVALIDPARAMS  
DDERR_NODIRECTDRAWHW  
DDERR_OUTOFMEMORY  

| |
Автор Каев Артем.
[AD]