C++ 通过Thunk在WNDPROC中访问this指针实现细节
摘要:
本文代码使用了一些C++11特性,需要编译器支持。本文仅讨论x86_64平台的相关实现,x86平台理论上只需修改 thunk 相关机器码即可。THUNK的原理参见之前的一篇博文《C++ 通过Thunk在WNDPROC中访问this指针》首先定义我们的window类,该类实现对一个Win32窗口句柄的封装。该类将在构造函数中创建窗口,在析构时销毁窗口;窗口的消息过程函数(WindowProc)将是一个用机器码在内存中动态构造的thunk,其作用是把收到的4个参数中的第一个也就是窗口句柄替换成window类的this指针,然后把调用传递给window类的静态函数static_procedure;静 阅读全文
posted @ 2013-11-20 23:22 Todd Pointer 阅读(1817) 评论(0) 推荐(1)