Forum » Programiranje » [Naloga][C++] MFC HOOKPROC pretvarjanje
[Naloga][C++] MFC HOOKPROC pretvarjanje
]Fusion[ ::
Imam za šolo eno nalogo in dobivam neki čudn error v VS2005. dobim error:
Error 1 error C2440: 'type cast' : cannot convert from 'overloaded-function' to 'HOOKPROC'
Če mogoče ima kdo idejo kje je problem se bi priporočal :)
Pa še koda:
Če rabite še .h fajl al pa katerega drugega rečte.
LP
P.S.: takoj v naslednji vrstici tudi ne prepozna WM_MOUSE če še mogoče to kdo ve kaj bi lahko blo :)
Error 1 error C2440: 'type cast' : cannot convert from 'overloaded-function' to 'HOOKPROC'
Če mogoče ima kdo idejo kje je problem se bi priporočal :)
Pa še koda:
#include "stdafx.h" #include "Vaja3_dll.h" #ifdef _DEBUG #define new DEBUG_NEW #endif // CVaja3_dllApp BEGIN_MESSAGE_MAP(CVaja3_dllApp, CWinApp) END_MESSAGE_MAP() // CVaja3_dllApp construction CVaja3_dllApp::CVaja3_dllApp() { // TODO: add construction code here, // Place all significant initialization in InitInstance } // The one and only CVaja3_dllApp object CVaja3_dllApp theApp; // CVaja3_dllApp initialization BOOL CVaja3_dllApp::InitInstance() { AFX_MANAGE_STATE(AfxGetStaticModuleState( )); ghInstance = AfxGetInstanceHandle(); CWinApp::InitInstance(); return TRUE; } LRESULT _declspec(dllexport) _stdcall CVaja3_dllApp::MouseProc(int nCode, WPARAM wParam, LPARAM lParam) { //koda za prestrezanje } void _declspec(dllexport) CVaja3_dllApp::InstallMouseHook(HWND hWnd) { ghWndMain = hWnd; HOOKPROC lpfn =(HOOKPROC) MouseProc; //<---- tu javi napako ghMouseHook=SetWindowsHookEx(WM_MOUSE, lpfn, ghInstance, NULL); } void _declspec(dllexport) CVaja3_dllApp::DeInstallMouseHook( ) { ::UnhookWindowsHookEx(ghMouseHook); }
Če rabite še .h fajl al pa katerega drugega rečte.
LP
P.S.: takoj v naslednji vrstici tudi ne prepozna WM_MOUSE če še mogoče to kdo ve kaj bi lahko blo :)
"I am not an animal! I am a human being! I... am... a man!" - John Merrick
- spremenilo: CCfly ()
yeti ::
Ni se mi dalo preverjat v msdn, samo na brzino;
static LRESULT _declspec(dllexport) _stdcall CVaja3_dllApp::MouseProc(int nCode, WPARAM wParam, LPARAM lParam)
{
//koda za prestrezanje
}
void _declspec(dllexport) CVaja3_dllApp::InstallMouseHook(HWND hWnd)
{
ghWndMain = hWnd;
HOOKPROC lpfn =(HOOKPROC) &MouseProc;
ghMouseHook=SetWindowsHookEx(WM_MOUSE, lpfn, ghInstance, NULL);
}
Function POINTER filaš!!
static LRESULT _declspec(dllexport) _stdcall CVaja3_dllApp::MouseProc(int nCode, WPARAM wParam, LPARAM lParam)
{
//koda za prestrezanje
}
void _declspec(dllexport) CVaja3_dllApp::InstallMouseHook(HWND hWnd)
{
ghWndMain = hWnd;
HOOKPROC lpfn =(HOOKPROC) &MouseProc;
ghMouseHook=SetWindowsHookEx(WM_MOUSE, lpfn, ghInstance, NULL);
}
Function POINTER filaš!!
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [c#] Vprašanje glede release verzije aplikacijeOddelek: Programiranje | 1533 (1357) | Ericssony |
» | Tezava pri instanciranju class-aOddelek: Programiranje | 1323 (1194) | KernelPanic |
» | Win32 API in C++Oddelek: Programiranje | 1590 (1461) | Monster |
» | OpenGL orr v ansi cOddelek: Programiranje | 1666 (1454) | igor12 |
» | Odpiranje dat.exe v VBOddelek: Programiranje | 3021 (2814) | webblod |