OpenCV Visual Studio ntdll.dll

时间:2015-02-05 09:35:38

标签: c++ opencv visual-studio-2013

我试图在Visual Studio 2013上使用OpenCV 2.4.10创建一个项目,但到目前为止我运气很少,原因如下。请提出帮助。 TIA。

'letstryitonemoretime.exe' (Win32): Loaded 'C:\Users\Kndarp\Documents\Visual Studio 2013\Projects\letstryitonemoretime\Debug\letstryitonemoretime.exe'. Symbols loaded.
'letstryitonemoretime.exe' (Win32): Loaded 'C:\Windows\SysWOW64\ntdll.dll'. Symbols loaded.
'letstryitonemoretime.exe' (Win32): Loaded 'C:\Windows\SysWOW64\kernel32.dll'. Symbols loaded.
'letstryitonemoretime.exe' (Win32): Loaded 'C:\Windows\SysWOW64\KernelBase.dll'. Symbols loaded.
First-chance exception at 0x77BC8F05 (ntdll.dll) in letstryitonemoretime.exe: 0xC000007B:  %hs is either not designed to run on Windows or it contains an error. Try installing the program again using the original installation media or contact your system administrator or the software vendor for support. Error status 0x.
Unhandled exception at 0x77BC8F05 (ntdll.dll) in letstryitonemoretime.exe: 0xC000007B:  %hs is either not designed to run on Windows or it contains an error. Try installing the program again using the original installation media or contact your system administrator or the software vendor for support. Error status 0x.

1 个答案:

答案 0 :(得分:5)

我收到了相同的错误消息,因为我的程序试图加载32位DLL而不是64位DLL。您可以使用Dependency Walker查看程序尝试加载哪些DLL。

执行以下步骤:

  1. 打开Dependency Walker
  2. 打开您的可执行文件(文件 - >打开选择您的可执行文件)
  3. 确保所有DLL使用相同的CPU架构。中间窗格列出了程序正在使用的所有DLL。 CPU列表示DLL是32位还是64位。它们都应该是一样的。
  4. 在我的情况下,其中一个DLLS是32位而不是64位,因为我没有将64位DLL添加到我的环境路径中。我只是将64位DLL复制到与程序二进制文件相同的文件夹中,错误就消失了。