0 c winapi richedit subclassing common-controls
我为编辑和richedit做了这个确切的事情但是对于后者存在访问冲突,为什么?当tabctrl完成时也会发生同样的事情.我究竟做错了什么?我怎样才能让它发挥作用?
WNDPROC OriginalProc;
LRESULT CALLBACK MyProc(HWND h, UINT m, WPARAM w, LPARAM p)
{
return OriginalProc (h, m, w, p);// access violation for common controls
}
// elsewhere
HWND h = CreateWindow(....)
OriginalProc = (WNDPROC)SetWindowLong(h, GWL_WNDPROC, (LONG)MyProc);
Run Code Online (Sandbox Code Playgroud)
我正在使用vc ++ 6.
提前致谢.
你不应该OriginalProc
直接打电话; 使用CallWindowProc来调用它.
此外,从您提供的示例中很难判断,但请确保OriginalProc
多个窗口未使用它.它看起来这是一个单一的全局变量,但我猜你正在为多个窗口创建子类.