请问使用LoadResource后 需要手动释放该资源吗?

来源:百度知道 编辑:UC知道 时间:2024/05/21 13:14:29
LoadResource是不是将一个在某段内存里的资源载入全局内存(等于一个副本)?
然后我将利用这个函数返回的一个HGLOBAL句柄和我一个类的实例相关联
之后我该不该手动释放这个资源呢(在全局内存里) 如果释放应该在什么时候释放?(是整个程序结束前?还是将返回的句柄我与某类实例关联后马上就释放呢?)

本人菜鸟 高手多指教
请问HGLOBAL向后兼容是什么意思 还有装载模块是什么时候被卸载的呢

LoadResource返回HGLOBAL型是为了向后兼容,而不是因为函数返回一个全局存储块句柄,
当使用完资源后,可以通过调用函数以释放加速器表、位图、光标、图标以及菜单所占的内存资源,减少程序所占空间,32位应用程序可以不必释放LoadResource装载资源的,资源随着被装载模块的卸载会自动被释放。

向后兼容就是新系统支持老东西,
比如新操作系统Windows 7,如果保持向后兼容,那麽
以前版本的软件就可以在Windows 7下运行,比如游戏软件,
否则就不行。

装载的模块是在程序结束时被卸载的,应用程序如果不释放装载资源的,
资源将一直保留到程序结束,32位系统下,因为系统提供了较大的
内存,所以一定量的资源可以不必释放。