1. 程式人生 > >ON_WM_TIMER() void (__cdecl xx::* )(UINT)”轉換為“void (__cdecl CWnd::* )(UINT_PTR)(轉)

ON_WM_TIMER() void (__cdecl xx::* )(UINT)”轉換為“void (__cdecl CWnd::* )(UINT_PTR)(轉)

開發十年,就只剩下這套架構體系了! >>>   

ON_WM_TIMER()在編譯器從32位轉換為64位的時候, 出現的問題;

class CFlatComboBox : public CComboBox   (基類為CWnd)

為了過載CWnd的函式:OnTimer(UINT nIDEvent)

需要在MASSEGE_MAP()加入: ON_WM_TIMER()

然後再CFlatComboBox 中加入相應函式:

afx_msg void OnTimer(UINT nIDEvent);

 

此時切換到win64就會出錯: void (__cdecl xx::* )(UINT)”轉換為“void (__cdecl CWnd::* )(UINT_PTR)

這裡改為: 

afx_msg void OnTimer(UINT_PTR nIDEvent);&