关于NTDLL.DLL Initialization Failed

szwilfred 2009-07-24 11:33:51
我使用的是VC++6.0编程,得到一个工程后一开始debug运行没有问题,但过一会再试的时候(期间没有改任何代码),直接运行“!”没有反应,debug后就会出现下面的情况:
Unhandle exception in xx.exe(NTDLL.DLL):0xc0000142 :DLL Initialization Failed

请问各位 这个是什么问题啊?改怎么解决呢?
...全文
1367 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyljerry 2009-07-27
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 szwilfred 的回复:]
引用 15 楼 biweilun 的回复:
唯一的原因,你的LoadLibrary被Hook了后没有恢复回来。
可能是杀毒软件或是病毒所为

你看看Rundll32.exe调用加载一个DLL试试出错不?

调用了 但是没反应
另外我用regsvr32注册ntdll.dll出现的情况是:已加载NTDll,但没有找到dllregisterserver输入点
无法注册这个文件。这样的情况是正常的嘛?
[/Quote]
ntdll.dll又不是com组件,不是通过Regsvr32来注册
szwilfred 2009-07-27
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 biweilun 的回复:]
唯一的原因,你的LoadLibrary被Hook了后没有恢复回来。
可能是杀毒软件或是病毒所为

你看看Rundll32.exe调用加载一个DLL试试出错不?
[/Quote]
调用了 但是没反应
另外我用regsvr32注册ntdll.dll出现的情况是:已加载NTDll,但没有找到dllregisterserver输入点
无法注册这个文件。这样的情况是正常的嘛?
szwilfred 2009-07-26
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 biweilun 的回复:]
唯一的原因,你的LoadLibrary被Hook了后没有恢复回来。
可能是杀毒软件或是病毒所为

你看看Rundll32.exe调用加载一个DLL试试出错不?
[/Quote]
能具体说说怎么弄吗?我菜鸟 谢谢
biweilun 2009-07-26
  • 打赏
  • 举报
回复
唯一的原因,你的LoadLibrary被Hook了后没有恢复回来。
可能是杀毒软件或是病毒所为

你看看Rundll32.exe调用加载一个DLL试试出错不?
szwilfred 2009-07-25
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 bitxinhai 的回复:]
可能是你的NTDLL.DLL坏了,到比较好的机器上考一个好用的NTDLL.DLL
放到指定的目录下,试试
[/Quote]
好像换起来很麻烦吧?而且在第一次编译运行的时候就不会出错啊,我刚才又重新弄了个工程,代码是一摸一样的,这个现在就可以运行。跟之前的情况一样,可能过段时间久又要出问题了。我真的不知道到底哪里出问题了。。。
bitxinhai 2009-07-25
  • 打赏
  • 举报
回复
可能是你的NTDLL.DLL坏了,到比较好的机器上考一个好用的NTDLL.DLL
放到指定的目录下,试试
szwilfred 2009-07-25
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 oyljerry 的回复:]
引用 10 楼 szwilfred 的回复:
引用 8 楼 oyljerry 的回复:
检查依赖的dll是否正确,代码一开始,main就开始设置断点,调试一下

MFC工程断点设在c**App theApp处对吗?还是相同的情况啊。。

rebuild all所有的代码,然后再设置断点,调试看看
[/Quote]
还是不行啊。。。
szwilfred 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zzz3265 的回复:]
debug 跟 直接运行 比较明显的区别是权限的问题

可以在程序写日志的方法调试
[/Quote]

这个怎么弄啊?
szwilfred 2009-07-24
  • 打赏
  • 举报
回复
rebuild all 后 编译过程没有问题 但一debug就还是出现相同问题

其他工程就不会出现这个问题
Yofoo 2009-07-24
  • 打赏
  • 举报
回复
debug 跟 直接运行 比较明显的区别是权限的问题

可以在程序写日志的方法调试
jyh_baoding 2009-07-24
  • 打赏
  • 举报
回复
你的系统有异常吗,可以REBUILD ALL试试
快乐鹦鹉 2009-07-24
  • 打赏
  • 举报
回复
rebuild all试试
oyljerry 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 szwilfred 的回复:]
引用 8 楼 oyljerry 的回复:
检查依赖的dll是否正确,代码一开始,main就开始设置断点,调试一下

MFC工程断点设在c**App theApp处对吗?还是相同的情况啊。。
[/Quote]
rebuild all所有的代码,然后再设置断点,调试看看
szwilfred 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 oyljerry 的回复:]
检查依赖的dll是否正确,代码一开始,main就开始设置断点,调试一下
[/Quote]
MFC工程断点设在c**App theApp处对吗?还是相同的情况啊。。
szwilfred 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 kesummer 的回复:]
检查你导入的DLL
[/Quote]
但是最开始的时候是可以运行的啊 那应该说明导入的DLL应该不会出错吧?
oyljerry 2009-07-24
  • 打赏
  • 举报
回复
检查依赖的dll是否正确,代码一开始,main就开始设置断点,调试一下
KeSummer 2009-07-24
  • 打赏
  • 举报
回复
检查你导入的DLL
zoulie 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 szwilfred 的回复:]
引用 3 楼 zzz3265 的回复:
debug 跟 直接运行 比较明显的区别是权限的问题

可以在程序写日志的方法调试


这个怎么弄啊?
[/Quote]
在代码执行的地方写文件LOG,将执行的结果写进文件里

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧