skype出错弹出Access violation at address in module ‘ntdll.dll’.write of address 问题分析及解决

由TOM推出的实时语音通讯工具skype因其可免费多方通话,音质清晰,通话保密性强,全球通用等特点受到广大上班族的喜爱,但因软件和系统的兼容性问题,常常出现一些小麻烦让人难以应付,比如今天要说的ntdll.dll问题,不知道如何解决的话,确实让人无法工作的。

问题症状:已登录的skype只要有人上线或发来消息,都会弹出错误对话框,显示Access violation at address 7******* in module ‘ntdll.dll’.write of address 0*******。

问题解释:Access Violation(非法访问),General Protection Fault(一般保护性错误)或者Invalid Page Fault(无效页面错误),虽然说法不一样,但本质上总是由同一种错误引起的。Access Violation常常在计算机用户运行的程序试图存取未被指定使用的存储区时遇到。
Access violation at address <十六进制值> 
in module <应用程序名> 
Read of address <十六进制值> 

ntdll.dll XP系统核心dll文件

Access violation at address 7******** in module ‘ntdll.dll’.write of address 0******** 翻译过来即为模块ntdll.dll在7********存取违反,禁止对0********地址的读取。

分析解决办法:
首先,出现这个问题的原因出现在skype信息存取上或系统文件ntdll.dll上。

一、先从ntdll.dll文件入手。首先想到文件重注册
开始-运行-输入regsvr32 NTDLL.DLL,弹出错误提示:“已加载ntdll.dll,但是没有找到dllregisterserver输入点”。
不是所有dll文件都要注册的, 能调用regsvr32注册的dll是有要求的,要实现DllRegisterServer函数才行的,ntdll.dll是一个很底层的dll文件,注册表的操作还要建立中这个dll这上,所以,不能注册的。那么是否应该寻找正确的ntdll.dll版本与skype调用匹配呢,但因ntdll.dll涉及系统核心,作者未重下载更换。

二、解决存取问题
1、操作系统解决方法
右击“我的电脑”。单击“属性”。在“系统属性”中单击“高级”。在“性能”中单击“设置”。在“性能选项”中单击“数据执行保护”。单击“添加”。选择你的程序。

2、软件设置解决方法

点击“工具”下的“选项”栏,找到隐私设置,在“保存记录为”选择永久保存;退出skype,然后按“window”键+R键, 出现“运行”对话框,请键入%appdata%\skype,接着找到shared.hck 和shared.xml 这两个文件,把把它们彻底删除。
注:如果没有找到上述两个文件,那就按下面的方式去找双击“我的电脑”--点击“工具”--“文件夹选项”--“查看”--在“查看”选项里找到“显示所有文件和文件夹”--“确定”,再查找即可找到以上所述两文件。

重启skype,问题是不是解决了。以上仅为个人意见,若有不对之处,请留言交流。



from: http://www.fraiy.org/Archiver/view.asp?id=20


你可能感兴趣的:(工具,通讯,skype)