Aplikacja przyjmujaca WM_Message

0

Problem polega na tym. Chce stworzyc aplikacje ktora po prostu dziala w tle, nie ma zadnego okna i po prostu potrafi przyjmowac wlasne zdefiniowanie WM_MESSAGE'i. Probowalem stworzyc prosta klase z sama MessageMap'a (MFC), ktora by przetwarzala ON_MESSAGE(moj_msg,mojaFunkcja). Jednak wyrzuca mi blad przy kompilacji:

error C2440: 'static_cast' : cannot convert from 'LRESULT (__thiscall CMFCApp::* )(WPARAM,LPARAM)' to 'LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)'
None of the functions with this name in scope match the target type

Wiadomosc mam zdefiniowana jako
afx_msg LRESULT OnWiad(WPARAM wParam, LPARAM lParam);
i odpowiednia do niej funkcja w CMFCApp

CMFCApp jest dziedziczona po CWinApp

Ktos potrafi pomoc albo dac inne rozwiazanie?

0

Fragmenty mojego programu tworzące takie okno w WinAPI:

WNDCLASS wcl;
HWND hWnd;
MSG msg;

ZeroMemory(&wcl, sizeof(WNDCLASS));
wcl.lpfnWndProc = EEWndProc;
wcl.hInstance = hInstance;
wcl.lpszClassName = "EEWndClass";

if(!RegisterClass(&wcl)) return -1;

hWnd = CreateWindow(wcl.lpszClassName, "EEMsgWindow", 0, 0, 0, 0, 0, HWND_MESSAGE, 0, hInstance, 0);

while(GetMessage(&msg, NULL, 0, 0))
{
     TranslateMessage(&msg);
     DispatchMessage(&msg);
}
0

Dzieki, w sumie juz to zrobione, gdyz tez stwierdzilem ze w win api bedzie znacznie prosciej i szybciej :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1