Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Вопрос по DirectDrawCreate


Автор: kurlyak 8.8.2012, 21:50
Вот есть DirectDraw, DirectDraw2, DirectDraw4, DirectDraw7. А функция DirectDrawCreate какой DirectDraw создает? Просто DirectDraw?

Автор: BorisVorontsov 9.8.2012, 11:21
Есть интерфейсы. А функция возвращает интерфейс IDirectDraw, для получения расширенных интерфейсов можно воспользоваться методом QueryInterface

Автор: kurlyak 10.8.2012, 05:16
Написал простенькую программу- но не создаеться интерфес ДД7 - возвращает 0

Код

#include <Windows.h>
#include <ddraw.h>
#pragma comment (lib,"ddraw.lib")
#pragma comment (lib,"dxguid.lib")

#define INITGUID

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int iCmdShow )
{

LPDIRECTDRAW        lpdd;
LPDIRECTDRAW7        lpdd7;
if (FAILED(DirectDrawCreate(NULL, &lpdd, NULL)))
return(0);

if (FAILED(lpdd->QueryInterface(IID_IDirectDraw7, (LPVOID*)lpdd7)))
MessageBox(0,0,0,0);
return (0);


return 0;
}



Причем у меня VS Assist стоит. Он почему то подчеркнул красным LPDIRECTDRAW, LPDIRECTDRAW7 и IID_IDirectDraw7. Что это может быть?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)