ID3DXFont :: DrawText修改IDirect3DDevice9 vtable

时间:2011-08-13 23:17:42

标签: c++ com direct3d9

我正在使用Direct3D - 修改设备对象的vtable条目,以便调用我的函数而不是提供的函数。我注意到,尽管这主要是有效的,但在某些方面有些东西可以恢复IDirect3DDevice9 vtable,例如ID3DXFont::DrawText - 第一个调用;别人不接触它。

为什么会这样?

1 个答案:

答案 0 :(得分:0)

修改vtables几乎是未定义的行为。也许有vtable的缓存或不同的副本。这完全取决于实现。你很幸运它可以工作!