句柄无效是什么意思 句柄无效怎么解决
发布时间:2014-04-28 20:23:27 作者:佚名
我要评论
为什么在游戏运行过程中会突然不停的出现提示"句柄无效?" 句柄无效是什么意思
还有网友是在游戏过程中突然出现警告音,最小化游戏后看到桌面上不停的出现提示句柄无效,也无法正常关机,按电源关机,重启后用金山杀毒后并没发现病毒,用系统备份还原系统后也无法解决,在玩一段时间后依然出现,应该怎么办?
处理方法:此警告音是否由于安装了第三方软件后提示的,如果是建议卸载掉不要使用,或查看是不是游戏本身遇到了问题,可以卸载重新下载安装。
系统不能加载用户配置, 但能加载默认配置。
“句柄无效”通常是编程的错误,但你的情况显然不可能是编程的问题,应该是丢失或更改了某些系统文件。我猜可能是你的dircetx错误,或者是丢失了某些动态连接库的DLL文件。你重新下载一个directx9.0c,安装试试。如果还不行,就重装操作系统,这样做比较省事。
其他对于“句柄无效”的相关解释:(仅供参考!)
所谓句柄实际上是一个数据,是一个Long (整长型)的数据。
句柄是WONDOWS用来标识被应用程序所建立或使用的对象的唯一整数,WINDOWS使用各种各样的句柄标识诸如应用程序实例,窗口,控制,位图,GDI对象等等。WINDOWS句柄有点象C语言中的文件句柄。
从上面的定义中的我们可以看到,句柄是一个标识符,是拿来标识对象或者项目的,它就象我们的姓名一样,每个人都会有一个,不同的人的姓名不一样,但是,也可能有一个名字和你一样的人。从数据类型上来看它只是一个16位的无符号整数。应用程序几乎总是通过调用一个WINDOWS函数来获得一个句柄,之后其他的WINDOWS函数就可以使用该句柄,以引用相应的对象。
如果想更透彻一点地认识句柄,我可以告诉大家,句柄是一种指向指针的指针。我们知道,所谓指针是一种内存地址。应用程序启动后,组成这个程序的各对象是住留在内存的。如果简单地理解,似乎我们只要获知这个内存的首地址,那么就可以随时用这个地址访问对象。但是,如果您真的这样认为,那么您就大错特错了。我们知道,Windows是一个以虚拟内存为基础的操作系统。在这种系统环境下,Windows内存管理器经常在内存中来回移动对象,依此来满足各种应用程序的内存需要。对象被移动意味着它的地址变化了。如果地址总是如此变化,我们该到哪里去找该对象呢?
为了解决这个问题,Windows操作系统为各应用程序腾出一些内存储地址,用来专门登记各应用对象在内存中的地址变化,而这个地址(存储单元的位置)本身是不变的。Windows内存管理器在移动对象在内存中的位置后,把对象新的地址告知这个句柄地址来保存。这样我们只需记住这个句柄地址就可以间接地知道对象具体在内存中的哪个位置。这个地址是在对象装载(Load)时由系统分配给的,当系统卸载时(Unload)又释放给系统。
句柄地址(稳定)→记载着对象在内存中的地址————→对象在内存中的地址(不稳定)→实际对象
本质:WINDOWS程序中并不是用物理地址来标识一个内存块,文件,任务或动态装入模块的,相反的,WINDOWS API给这些项目分配确定的句柄,并将句柄返回给应用程序,然后通过句柄来进行操作。
但是必须注意的是程序每次从新启动,系统不能保证分配给这个程序的句柄还是原来的那个句柄,而且绝大多数情况的确不一样的。假如我们把进入电影院看电影看成是一个应用程序的启动运行,那么系统给应用程序分配的句柄总是不一样,这和每次电影院售给我们的门票总是不同的一个座位是一样的道理。

处理方法:此警告音是否由于安装了第三方软件后提示的,如果是建议卸载掉不要使用,或查看是不是游戏本身遇到了问题,可以卸载重新下载安装。
系统不能加载用户配置, 但能加载默认配置。
“句柄无效”通常是编程的错误,但你的情况显然不可能是编程的问题,应该是丢失或更改了某些系统文件。我猜可能是你的dircetx错误,或者是丢失了某些动态连接库的DLL文件。你重新下载一个directx9.0c,安装试试。如果还不行,就重装操作系统,这样做比较省事。
其他对于“句柄无效”的相关解释:(仅供参考!)
所谓句柄实际上是一个数据,是一个Long (整长型)的数据。
句柄是WONDOWS用来标识被应用程序所建立或使用的对象的唯一整数,WINDOWS使用各种各样的句柄标识诸如应用程序实例,窗口,控制,位图,GDI对象等等。WINDOWS句柄有点象C语言中的文件句柄。
从上面的定义中的我们可以看到,句柄是一个标识符,是拿来标识对象或者项目的,它就象我们的姓名一样,每个人都会有一个,不同的人的姓名不一样,但是,也可能有一个名字和你一样的人。从数据类型上来看它只是一个16位的无符号整数。应用程序几乎总是通过调用一个WINDOWS函数来获得一个句柄,之后其他的WINDOWS函数就可以使用该句柄,以引用相应的对象。
如果想更透彻一点地认识句柄,我可以告诉大家,句柄是一种指向指针的指针。我们知道,所谓指针是一种内存地址。应用程序启动后,组成这个程序的各对象是住留在内存的。如果简单地理解,似乎我们只要获知这个内存的首地址,那么就可以随时用这个地址访问对象。但是,如果您真的这样认为,那么您就大错特错了。我们知道,Windows是一个以虚拟内存为基础的操作系统。在这种系统环境下,Windows内存管理器经常在内存中来回移动对象,依此来满足各种应用程序的内存需要。对象被移动意味着它的地址变化了。如果地址总是如此变化,我们该到哪里去找该对象呢?
为了解决这个问题,Windows操作系统为各应用程序腾出一些内存储地址,用来专门登记各应用对象在内存中的地址变化,而这个地址(存储单元的位置)本身是不变的。Windows内存管理器在移动对象在内存中的位置后,把对象新的地址告知这个句柄地址来保存。这样我们只需记住这个句柄地址就可以间接地知道对象具体在内存中的哪个位置。这个地址是在对象装载(Load)时由系统分配给的,当系统卸载时(Unload)又释放给系统。
句柄地址(稳定)→记载着对象在内存中的地址————→对象在内存中的地址(不稳定)→实际对象
本质:WINDOWS程序中并不是用物理地址来标识一个内存块,文件,任务或动态装入模块的,相反的,WINDOWS API给这些项目分配确定的句柄,并将句柄返回给应用程序,然后通过句柄来进行操作。
但是必须注意的是程序每次从新启动,系统不能保证分配给这个程序的句柄还是原来的那个句柄,而且绝大多数情况的确不一样的。假如我们把进入电影院看电影看成是一个应用程序的启动运行,那么系统给应用程序分配的句柄总是不一样,这和每次电影院售给我们的门票总是不同的一个座位是一样的道理。
相关文章
- 当遇到USB接口驱动异常时,可以通过多种方法来解决,其中主要就包括重装USB控制器、禁用USB选择性暂停设置、更新或安装新的主板驱动等2025-04-23
在日常使用U盘的过程中,许多用户可能会遇到U盘突然无法写入数据的问题,这通常是由于U盘被写保护所致,写保护功能虽然可以防止数据被意外修改或删除,但在需要写入新数据时2024-12-14
最近配置了服务器,并做了磁盘阵列,突然有一天硬盘找不到了,然后重新阵列找回,但在磁盘管理器中发现虽然可以看到分区了,但提醒硬盘是只读模式无法写入文件,参考如下方2024-12-14
电脑是现代人生活中不可缺少的工具,但有时候我们会遇到电脑开机失败的情况,这时候我们应该怎么办呢?本文将从多个方面为大家介绍解决办法2024-10-26
电脑蓝屏代码memory_management怎么解决? 系统蓝屏原因
电脑突然蓝屏,显示memory management,上来就被这串英文镇住了,蓝屏memory management是什么?为什么会出现蓝屏memory management呢?,详细请看下文介绍2024-08-01
如何解决wpcap.dll丢失? 电脑wpcap.dll文件破损的修复方法
如果文件wpcap.dll丢失有什么办法可以解决,出现wpcap.dll丢失的的原因又是因为什么呢?今天就大家了解一下wpcap.dll文件,希望能够你给在解决wpcap.dll文件的问题上有所帮2024-08-01
pasmutility.dll缺失怎么办? 电脑pasmutility.dll丢失的修复技巧
如果你在打开某些程序或者游戏时遇到了“缺失pasmutility.dll”的错误提示,不要惊慌,这是一个非常普遍的问题,下面我们就来看看详细的教程2024-08-01
svcapicall.dll丢失怎么解决? 电脑提示svcapicall.dll文件损坏的修复技
在使用电脑的过程中,有时会遇到各种各样的问题,其中之一就是dll文件丢失的情况,特别是当出现svcapicall.dll丢失的问题时,很多人可能会束手无策,,下面我们就来看看这个2024-07-30
ser32.dll丢失怎么办? 电脑提示ser32.dll文件丢失破损的修复方法
如果出现user32.dll丢失的情况,可能会影响操作系统的正常运行,今天这篇文章本文将介绍电脑缺失user32.dll丢失的解决办法,详细说明解决步骤2024-07-30
msstdfmt.dll文件损坏丢失怎么办? 快速的修复msstdfmt.dll丢失的方法
你是否曾经碰到过弄丢msstdfmt.dll文件的情况呢?如果你遇到此问题,不必惊慌,在本文中,将为您介绍几种修复msstdfmt.dll文件的方法,帮助您解决这一问题2025-03-20








最新评论