problemlöser64
Ensign
- Registriert
- Dez. 2009
- Beiträge
- 213
Hi,
ich wollte mal bischen DirectX programmieren und da erst mal mit DirectDraw anfangen. Leider habe ich schon beim initialisieren Probleme...
Ich verwende folgendes Tutorial:
http://www.codeworx.org/directx_tuts.php
Und das ist mein erster Gehversuch mit DirectX:
Leider kommen immer diese Fehlermeldungen:
--------------------Konfiguration: projekt1 - Win32 Debug--------------------
Kompilierung läuft...
Program.cpp
E:\programmierung\software\Microsoft Visual Studio\MyProjects\projekt1\Program.cpp(10) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'lpDirectDraw'
E:\programmierung\software\Microsoft Visual Studio\MyProjects\projekt1\Program.cpp(10) : error C2501: 'LPDIRECTDRAW7' : Fehlende Speicherklasse oder Typbezeichner
E:\programmierung\software\Microsoft Visual Studio\MyProjects\projekt1\Program.cpp(10) : fatal error C1004: Unerwartetes Dateiende gefunden
Fehler beim Ausführen von cl.exe.
projekt1.exe - 3 Fehler, 0 Warnung(en)
Was mach ich falsch?
ich wollte mal bischen DirectX programmieren und da erst mal mit DirectDraw anfangen. Leider habe ich schon beim initialisieren Probleme...
Ich verwende folgendes Tutorial:
http://www.codeworx.org/directx_tuts.php
Und das ist mein erster Gehversuch mit DirectX:
Code:
#include <windows.h>
#include <ddraw.h>
#define titel "MusterGui"
#define windowclass "DDWinClass"
LONG FAR WINAPI WndProc (HWND , UINT , UINT , LONG);
LPDIRECTDRAW7 lpDirectDraw;
HRESULT ddrval;
int WINAPI WinMain (HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
MSG msg ;
HWND hwnd ;
WNDCLASS wndclass ;
if (!hPrevInstance)
{
wndclass.style = CS_HREDRAW | CS_VREDRAW ;
wndclass.lpfnWndProc = WndProc ;
wndclass.cbClsExtra = 0 ;
wndclass.cbWndExtra = 0 ;
wndclass.hInstance = hInstance ;
wndclass.hIcon = LoadIcon (NULL , IDI_APPLICATION) ;
wndclass.hCursor = LoadCursor (NULL , IDC_ARROW) ;
wndclass.hbrBackground = (HBRUSH)GetStockObject (LTGRAY_BRUSH) ;
wndclass.lpszMenuName = NULL ;
wndclass.lpszClassName = windowclass ;
RegisterClass (&wndclass) ;
}
hwnd = CreateWindow (windowclass ,
titel ,
WS_OVERLAPPEDWINDOW ,
CW_USEDEFAULT ,
CW_USEDEFAULT ,
CW_USEDEFAULT ,
CW_USEDEFAULT ,
NULL , NULL ,
hInstance , NULL) ;
ShowWindow (hwnd , nCmdShow) ;
UpdateWindow (hwnd) ;
ddrval = DirectDrawCreateEx(NULL, (VOID**)&lpDirectDraw, IID_IDirectDraw7, NULL);
if (ddrval != DD_OK)
{
return (0);
}
ddrval = lpDirectDraw->SetCooperativeLevel (hwnd, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN);
if (ddrval != DD_OK)
{
lpDirectDraw->Release();
lpDirectDraw = NULL;
return (0);
}
ddrval = lpDirectDraw->SetDisplayMode (640, 480, 8, 0, 0);
if (ddrval != DD_OK)
{
lpDirectDraw->Release();
lpDirectDraw = NULL;
return (0);
}
while(1)
{
if (PeekMessage(&msg,NULL,0,0,PM_REMOVE))
{
if (msg.message == WM_QUIT) break;
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
if (lpDirectDraw != NULL)
{
lpDirectDraw->Release();
lpDirectDraw = NULL;
}
return msg.wParam ;
}
LONG FAR WINAPI WndProc (HWND hwnd , UINT message ,
UINT wParam , LONG lParam)
{
switch (message)
{
case WM_DESTROY:
{
PostQuitMessage (0) ;
return 0 ;
} break;
}
return DefWindowProc (hwnd , message , wParam , lParam) ;
}
Leider kommen immer diese Fehlermeldungen:
--------------------Konfiguration: projekt1 - Win32 Debug--------------------
Kompilierung läuft...
Program.cpp
E:\programmierung\software\Microsoft Visual Studio\MyProjects\projekt1\Program.cpp(10) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'lpDirectDraw'
E:\programmierung\software\Microsoft Visual Studio\MyProjects\projekt1\Program.cpp(10) : error C2501: 'LPDIRECTDRAW7' : Fehlende Speicherklasse oder Typbezeichner
E:\programmierung\software\Microsoft Visual Studio\MyProjects\projekt1\Program.cpp(10) : fatal error C1004: Unerwartetes Dateiende gefunden
Fehler beim Ausführen von cl.exe.
projekt1.exe - 3 Fehler, 0 Warnung(en)
Was mach ich falsch?