模块/方法 | 描述 | 等级 |
DirectSound3DBuffer | 内部对象泄漏:释放外部后对象后,此对象析构函数里面未完整释放内部对象,会导致对象释放后声音还在继续播放(回到IDE状态也是如此),即便先手动停止了播放后再释放也会导致内存泄漏(注意并不仅仅是对象本身泄漏,连音频Buffer也一起泄漏了)。 | 严重:会有声音残留和大量内存无法释放。 |
DirectPlayAddress、DirectPlayClient、DirectPlayLobbiedApplication、DirectPlayLobbyClient、DirectPlayPeer、DirectPlayServer、DirectPlayVoiceClient、DirectPlayVoiceServer | 和 DirectSound3DBuffer 的类似,只不过此对象没有声音,对开发者的体验影响相对较小,但是也存在内存泄漏和网络连接不能自动断开等问题。 | 普通:平常感觉不到,但可能长时间运行会有内存持续增长等问题。 |
InternalGetObject、InternalSetObject | 这是获取内部对象的接口dx8vb.dll是对VC的DX接口二次封装方便VB使用,因此该函数可用和原生DXAPI交互使用,但是微软忘记了对其内部对象的计数引用处理,使用此函数存在导致IDE崩溃的风险。 | 严重:IDE崩溃将会导致未保存的代码丢失。 |
D3DX8.DrawText | 这个函数其实并不算BUG,而是它内部调用的是ANSI接口,因此会有一些特殊字符变成问号的问题,所以我将其修改成了Unicode接口,顺便再额外优化了一下它在透明背景的RTT中绘制的效果。 | 轻微:不修复不影响正常使用,但修复了会有更好的体验。 |
| | |