【原创】vegas提示NTDLL.DLL出错的解决办法
2009-12-15 10:23
281 查看
ntdll.dll是什么?ntdll.dll出错怎么办?ntdll.dll位置在哪?ntdll.dll下载之后放在哪里?请看本文详解。ntdll.dll下载地址:点击下载
ntdll.dll文件分析
ntdll - ntdll.dll - DLL文件信息
DLL 文件: ntdll 或者 ntdll.dll
DLL 名称: NT Layer DLL
描述:
ntdll.dll是NT操作系统重要的模块。
路径位置:c:/windows/system32/ntdll.dll
属于: Windows NT
系统 DLL文件: 是
常见错误: File Not Found, Missing File, Exception Errors
安全等级 (0-5): 0
间谍软件: 否
广告软件: 否
XP的核心dll——ntdll.dll
打开NTDLL.dll,惊奇的发现原来CRT的许多基本函数居然都是在这里实现的!甚至包括qsort,ceil这样的函数,还有臭名昭著的 strcpy(严格来讲,这只能怪使用者不当心)。堆的释放,进程管理,似乎都是在这。于是,我决定,仔细察看以下它,这1410个函数是做什么的
用户模式的代码在调用系统内核函数的时候,首先把一个叫做system call number的数放在EAX中,把参数放在其它的寄存器中了。然后调用INT 2E中断。但是大部分应用程序并不需要直接这么做。通常都是在调用kernel32.dll等时由他们来调用INT 2E.
内核模式的代码,做法稍微有点不同。他们通常调用由NTOSKRNL.EXE导出的NTDLL.dll中Zw开头的那一系列函数,比如 ZwWaitForSingleObject, 反之,如果是用户级代码需要调用内核,就会利用INT 2E调用WaitForSingleObject.对于许多函数的批量调用,你会明显发现 Zw族要比Rtl族效率高很多。
可惜ntdll.dll中的大部分函数都是undocumented.
对于一部分得知其定义形式的函数,可以这样调用:
1.先将NTDLL.DLL读入 LoadLibrary(TEXT(\“NTDLL.dll\”))
2.利用GetProcAddress 获取其函数入口地址
3.利用得到的函数指针调用
蓝屏代码c0000221(ntdll.dll出错)解决方法
机器出现蓝屏,上面英文显示:
STOP:c0000221 unknown hard error \systemroot\system32\ntdll.dll
解决方法:
把BIOS里硬盘的UDMA选项改成不是AUTO的
如何设置UDMA模式:
BIOS设置页面
首先,我们进行硬盘的相关设置。选择Integrated Peripherals进入,这一项中包含有硬盘的相关设置选项,其中有SATA Mode、Secondary Master UDMA、Secondary Slave UDMA、SATA1/2、SATA3/4、RAID Enable等几个选项。
开DX10高材质NTDLL.DLL出错完美解决办法
32位系统寻址空间是4G,但由于Windows还要分配部分地址给其他设备,比如显存,所以实际可使用内存只有3.3G左右,这个是整个系统的软件能使用的内存,而在当初Windows设计时,没有考虑到现在大内存会如此普及,所以人为的设置了每个程序最大只能使用2G内存,超过2G的部分内存会被系统和其他程序使用,而开启D10 并打上高材质后 客户端内存占用会超过2G,在切换场景时崩溃,NTDLL.DLL的错误就是内存溢出
如果你愿意冒风险,详细设置步骤如下:
在开始菜单里使用搜索栏输入cmd,在找到的cmd.exe上右键,选择“以管理员身份运行”
输入命令
bcdedit /export “C:\BCDBackup” 这是保存当前的默认设置到C:\BCDBackup文件里
然后输入
bcdedit /set IncreaseUserVa 3072 这句才是真正将内存上限增加到3G,如果你只有3G物理内存,可以尝试把3072改成2560 (2.5G)
最后重启电脑
如果不幸你的电脑无法启动,请使用安全模式
在安全模式下,同样使用管理员身份运行cmd,输入
bcdedit /import “C:\BCDBackup”
就可以把刚才备份的设置覆盖回去,重新启动以后就复原了
如果没有备份的话也可以手动输入
bcdedit /set IncreaseUserVa 2048
如果将来系统运行不稳定,或者想改回来,也用以上方法,只不过安全模式不是必须的
----------------------------------------------
这里是vegas出错提示后的解决办法:
运行
regsvr32.exe NTDLL.DLL
不行的话就运行
rundll32.exe NTDLL.DLL
经过测试,可以了..
不知道什么原因..求高手解
ntdll.dll文件分析
ntdll - ntdll.dll - DLL文件信息
DLL 文件: ntdll 或者 ntdll.dll
DLL 名称: NT Layer DLL
描述:
ntdll.dll是NT操作系统重要的模块。
路径位置:c:/windows/system32/ntdll.dll
属于: Windows NT
系统 DLL文件: 是
常见错误: File Not Found, Missing File, Exception Errors
安全等级 (0-5): 0
间谍软件: 否
广告软件: 否
XP的核心dll——ntdll.dll
打开NTDLL.dll,惊奇的发现原来CRT的许多基本函数居然都是在这里实现的!甚至包括qsort,ceil这样的函数,还有臭名昭著的 strcpy(严格来讲,这只能怪使用者不当心)。堆的释放,进程管理,似乎都是在这。于是,我决定,仔细察看以下它,这1410个函数是做什么的
用户模式的代码在调用系统内核函数的时候,首先把一个叫做system call number的数放在EAX中,把参数放在其它的寄存器中了。然后调用INT 2E中断。但是大部分应用程序并不需要直接这么做。通常都是在调用kernel32.dll等时由他们来调用INT 2E.
内核模式的代码,做法稍微有点不同。他们通常调用由NTOSKRNL.EXE导出的NTDLL.dll中Zw开头的那一系列函数,比如 ZwWaitForSingleObject, 反之,如果是用户级代码需要调用内核,就会利用INT 2E调用WaitForSingleObject.对于许多函数的批量调用,你会明显发现 Zw族要比Rtl族效率高很多。
可惜ntdll.dll中的大部分函数都是undocumented.
对于一部分得知其定义形式的函数,可以这样调用:
1.先将NTDLL.DLL读入 LoadLibrary(TEXT(\“NTDLL.dll\”))
2.利用GetProcAddress 获取其函数入口地址
3.利用得到的函数指针调用
蓝屏代码c0000221(ntdll.dll出错)解决方法
机器出现蓝屏,上面英文显示:
STOP:c0000221 unknown hard error \systemroot\system32\ntdll.dll
解决方法:
把BIOS里硬盘的UDMA选项改成不是AUTO的
如何设置UDMA模式:
BIOS设置页面
首先,我们进行硬盘的相关设置。选择Integrated Peripherals进入,这一项中包含有硬盘的相关设置选项,其中有SATA Mode、Secondary Master UDMA、Secondary Slave UDMA、SATA1/2、SATA3/4、RAID Enable等几个选项。
开DX10高材质NTDLL.DLL出错完美解决办法
32位系统寻址空间是4G,但由于Windows还要分配部分地址给其他设备,比如显存,所以实际可使用内存只有3.3G左右,这个是整个系统的软件能使用的内存,而在当初Windows设计时,没有考虑到现在大内存会如此普及,所以人为的设置了每个程序最大只能使用2G内存,超过2G的部分内存会被系统和其他程序使用,而开启D10 并打上高材质后 客户端内存占用会超过2G,在切换场景时崩溃,NTDLL.DLL的错误就是内存溢出
如果你愿意冒风险,详细设置步骤如下:
在开始菜单里使用搜索栏输入cmd,在找到的cmd.exe上右键,选择“以管理员身份运行”
输入命令
bcdedit /export “C:\BCDBackup” 这是保存当前的默认设置到C:\BCDBackup文件里
然后输入
bcdedit /set IncreaseUserVa 3072 这句才是真正将内存上限增加到3G,如果你只有3G物理内存,可以尝试把3072改成2560 (2.5G)
最后重启电脑
如果不幸你的电脑无法启动,请使用安全模式
在安全模式下,同样使用管理员身份运行cmd,输入
bcdedit /import “C:\BCDBackup”
就可以把刚才备份的设置覆盖回去,重新启动以后就复原了
如果没有备份的话也可以手动输入
bcdedit /set IncreaseUserVa 2048
如果将来系统运行不稳定,或者想改回来,也用以上方法,只不过安全模式不是必须的
----------------------------------------------
这里是vegas出错提示后的解决办法:
运行
regsvr32.exe NTDLL.DLL
不行的话就运行
rundll32.exe NTDLL.DLL
经过测试,可以了..
不知道什么原因..求高手解
相关文章推荐
- tomcat安装时到/jvm.dll这个文件时出错解决办法【原创】
- [原创]Sqlserver2005附加数据库时出错提示操作系统错误5(拒绝访问)错误5120的解决办法
- 【原创】VMware虚拟机提示找不到vmnetbridge.dll,vmnet.sys等文件的解决办法
- delphi5编译提示RLINK32.dll出错,重启后也不管用的解决办法
- win7无法获得administrator权限???? unity导入插件提示dll文件出错。对dll无法复制移动解决办法!
- 安装sql server 2005 提示notificationservices.dll出错的解决办法
- 【Vegas原创】无法复制粘贴的解决办法
- Asp.net出错提示"无法找到脚本"/aspnet_client/syste..."解决办法
- Sqlserver 2012附加数据库时出错提示操作系统错误5(拒绝访问)错误5120的解决办法
- 一次owa登录exchange邮箱提示下载owaauth.dll的解决办法
- Sql server恢复数据库时出错,错误:3212,提示说“备份文件有两个媒体簇,但是只提供了1个 【解决办法】
- ComBoBox控件,如果里面有item为空,那么就报ntdll.dll的解决办法
- VS2005.NET提示"试图运行项目时出错,无法启动调试,绑定句柄无效"解决办法
- Delphi 在DLL中使用DevExpress控件时出错解决办法
- vs2008 提示msdbg.dll未正确安装的解决办法
- 【Vegas原创】windows 2008上启用防火墙后Oracle tnsping不通的解决办法
- Windows 7 运行VS2015编译的软件提示缺少ucrtbased.dll文件的解决办法
- 我遇到的Oracle下出错提示及解决办法
- VisualStudio.NET提示试图运行项目时出错:无法启动调试。绑定句柄无效解决办法
- VS.NET提示"试图运行项目时出错:无法启动调试。绑定句柄无效"解决办法