2017-09-07 28 views
-2

我有一个专用于混合平台的程序。我已经测试上 Win 7的临64位 赢得10临64位 赢8.1临64位 赢得10从用户的上述8.1为什么0x8007000B在一台Windows 10 Home PC上,而不在另一台

数十升级的同一个安装能够有赢7.

的各种口味

但是:我有一个获取用户“试图加载程序格式不正确。(异常来自HRESULT:0x8007000B)”的地步,一个特定的DLL加载...实际上是DLL加载并具有问题时,一个特定的依赖DLL加载。

既然我可以在那工作了十64位的机器点,我怀疑在Windows 10家庭版(即从运7家升级)PC的某些属性。我有一个日志文件,演示在Windows 10升级之前运行相同的程序。

我应该寻找在用户的PC上什么样的配置设置?

+1

如果你有几十个类似配置的机器,只是一个打破它可能只是一个窗口更新打破了东西。要真正诊断问题,您将不得不提供更多信息,这可能超出本网站的范围。 – xyious

+0

进程监视器(可从MS网站获得)是一个有用的工具,用于确认无法加载的DLL实际上是您尝试加载的DLL。一旦您确定哪个DLL文件未加载,请将其与其他工作系统进行比较。 –

回答

0

一种可能性正试图从一个64位可执行加载32位DLL(当调用LoadLibrary与例如一个完整路径明确地使用会发生这种情况)。

另一个原因可能是损坏的DLL(这可能是实际上更可能在此情况下,由于Windows升级)。如果DLL位于Windows \ system32中,则很有可能如果特定的DLL被重命名(例如为* .bad),则Windows保护系统可能会将DLL恢复到正确的版本并解决问题。

+0

我会测试一个系统还原到更新前的赢取10分。 – user3564895

相关问题