Hallo ich habe ein Problem mit einem Programm und vermute es ist was ähnliches wie bei meiner anderen Frage aber die Lösungsvorschläge Helfen nix.
Das ist C++ mit Direct3D
Hier der Code :
Das ist der Fehler :
error C2664: "ATOM RegisterClassA(const WNDCLASSA *)" : Konvertierung von Argument 1 von "WNDCLASSEX *" in "const WNDCLASSA *" nicht möglich.
Der Fehler ist in Zeile 61
Würde mich über schnelle Hilfe freuen
Danke
@cwriter weisst du noch mal rat ?
Das ist C++ mit Direct3D
Hier der Code :
C++:
#define WINDOW_CLASS_NAME L"Game Shell Window"
#define WIN32_LEAN_AND_MEAN
#include <string>
#include <Windows.h>
#define KEYDOWN(vk_code) (GetAsyncKeyState(vk_code)&0x8000)?1:0)
#define KEYUP(vk_code) (GetAsyncKeyState(vk_code)&0x8000)?0:1)
HWND main_window_handle = NULL;
HINSTANCE hinstance_app = NULL;
void Game_Shutdown(void);
void Game_Init(void);
void Game_Main(void);
LRESULT CALLBACK Windowproc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
{
PAINTSTRUCT ps;
HDC hdc;
switch (msg)
{
case WM_CREATE:
{
return (0);
}
break;
case WM_PAINT:
{
hdc = BeginPaint(hwnd, &ps);
EndPaint(hwnd, &ps);
return (0);
}
break;
case WM_DESTROY:
{
PostQuitMessage(0);
return(0);
}
break;
default:
break;
}
return (DefWindowProc(hwnd, msg, wparam, lparam));
}
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hprevinstance, LPSTR lpcmdline, int ncmdshow)
{
WNDCLASSEX Winclass;
HWND hwnd;
MSG msg;
WPARAM wparam;
Winclass.cbSize = sizeof(WNDCLASSEX);
Winclass.style = CS_HREDRAW | CS_VREDRAW;
Winclass.lpfnWndProc = Windowproc;
Winclass.cbClsExtra = 0;
Winclass.cbWndExtra = 0;
Winclass.hInstance = hinstance;
Winclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
Winclass.hCursor = LoadCursor(NULL, IDC_ARROW);
Winclass.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH);
Winclass.lpszMenuName = NULL;
Winclass.lpszClassName = WINDOW_CLASS_NAME;
Winclass.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
hinstance_app = hinstance;
if (!RegisterClass(&Winclass))
return (0);
if (!(hwnd = CreateWindowEx(NULL, WINDOW_CLASS_NAME, L"My GameShell", WS_OVERLAPPEDWINDOW | WS_VISIBLE, 0, 0, 800, 600, NULL, NULL, hinstance, NULL)))
return (0);
main_window_handle = hwnd;
void Game_Init();
while (TRUE) {
if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) {
if (msg.message == WM_QUIT)
break;
TranslateMessage(&msg);
DispatchMessage(&msg);
}
Game_Main();
}
Game_Shutdown();
return (msg, wparam);
}
void Game_Init(void) {
}
void Game_Main(void) {
if (KEYDOWN(VK_ESCAPE) {
SendMessage(main_window_handle, WM_CLOSE, 0, 0);
}
}
void Game_Shutdown(void) {
}
Das ist der Fehler :
error C2664: "ATOM RegisterClassA(const WNDCLASSA *)" : Konvertierung von Argument 1 von "WNDCLASSEX *" in "const WNDCLASSA *" nicht möglich.
Der Fehler ist in Zeile 61
Würde mich über schnelle Hilfe freuen
Danke
@cwriter weisst du noch mal rat ?
Zuletzt bearbeitet: