in der nähe von setwindowlong passt was nicht
-
Klappt es denn ohne deine "komische" Klassen-Kapselung? Sind auch alle Variablen gültig?
-
wenn ich setwindowlong bei initdialog in der dlgCallback aufrufe, sagt mit der compiler aufeinmal:
error C2440: '=' : 'long' kann nicht in 'long (__stdcall *)(struct HWND__ *,unsigned int,unsigned int,long)' konvertiert werdenwas tun, meine ganzen castVersuche schlagen fehl..?
-
ich bekomm es echt nicht hin. och, bitte, kommt schnippt mit dem finger und sagt: zack, da isser der böse fehler, musst nur des und das machen..
fänd ich wunderbar

-
Warum nimmst du eigentlich set_Callback(LONG Callback) und nicht set_Callback(WNDPROC Callback) ?
-
Du solltest dir mal ein funktionierendes Subclassing-Beispiel suchen und es dann Schritt für Schritt in eine Klasse kapseln.
-
@geeky setwindowlong benötigt und liefert mir long, drum dacht ich
mir, dass das casten bei callwindowproc am besten aufgehoben sei..ich habe jetzt die klassen weggelassen, so dass nur noch das da steht:
LONG test_wndProc_orig//global test_wndProc_orig=SetWindowLong(GetDlgItem(hDlg, IDC_BTN_OK), GWL_WNDPROC, (LONG)FM_BTN_OK);so soll die aufgerufene callback alles weiterleiten:
return CallWindowProc((WNDPROC)test_wndProc_orig, h_Dlg_FM, message, wParam, lParam);nur reagiert der button auf nichts mehr.
@tipp ich habe eigentlich ein ganz anderes problem was sich, wenn obiges laufen würde, gut lösen würde
-
Bau mal vor CallWindowProc() mal OutputDebugString() oder so ein, also prüfen ob in der neuen WindowProc überhaupt was ankommt...
-
-
@geeky in die callback geht er rein
@flenders mein winuser.h kennt kein setwindowlongptr, hab gerade das psdk download angefangen..
-
Wenn ich das richtig sehe musst du bei CallWindowProc auch wieder das Window-Handle des gesubclassten Buttons einsetzen. Also wenn du deine FM_BTN_OK-Callback nicht geändert hast hControl und nicht h_Dlg_FM

-
ohh flenders, sag des doch

dankschön euch beiden

-
Hab's doch auch da erst gesehen

