Illegal use of this type as an expression - C++


(Marcin Obala) #1

Witam. Muszę zrobić program w C++ WinApi w połączeniu z asemblerem. Póki co mam problem z samym WinAPI. W materiałach jest gotowy plik C++ który mamy wykorzystać, mamy podmienić funkcję WinAPI do rysowania funkcjami napisanymi w asemblerze. Niestety przy próbie kompilacji wyrzuca mi błąd taki jak w temacie. Przy linijce

PAINTSTRUCT ps;

ogólnie wyrzuca baaaaardzo dużo błędów przy tym kodzie

case WM_PAINT:

			PAINTSTRUCT ps;

			RECT client, center;

			int rect_width = 200, rect_height = 200;

			GetClientRect(hwnd, &client);

			center.left = (client.right - client.left - rect_width ) / 2;

			center.top = (client.bottom - client.top - rect_height) / 2;

			center.right = center.left + rect_width;

			center.bottom = center.top + rect_height;

			HDC hdc = BeginPaint(hwnd, &ps);

			HPEN hPen = CreatePen(PS_SOLID, 20, RGB(255, 0, 0));

			HBRUSH hBrush = CreateSolidBrush(RGB(0,255,0));

			HPEN hOldPen = (HPEN) SelectObject(hdc, hPen);

			HBRUSH hOldBrush = (HBRUSH) SelectObject(hdc, hBrush);

			Rectangle(hdc, center.left, center.top, center.right, center.bottom);

			EndPaint(hwnd, &ps);

			SelectObject(hdc, hOldPen);

			SelectObject(hdc, hOldBrush);

			DeleteObject(hPen);

			DeleteObject(hBrush);

			return 0;

Mógłby ktoś podpowiedzieć czemu? Kompiluje w VS2010.

-- Dodane 18.01.2011 (Wt) 14:35 --

Już problem z głowy, Visual tylko tego nie chciał skompilować. W Code::Blocks poszło