【发布时间】:2011-03-21 00:10:20
【问题描述】:
我最初在win7 32bits上设计了一个win32应用程序,用VC9.0。 我最近升级到win7 64位,并尝试构建+执行之前的应用程序。
构建运行良好(win32 应用程序),但在运行时出现错误“[...] has exited with code -1073741701 (0xc000007b)。”
我猜这是加载 [预期] 32 位 dll 的 64 位版本的结果。
此项目的具体依赖项是: SDL.lib SDLmain.lib SDL_ttf.lib opengl32.lib glu32.lib wininet.lib
SDL 和 SDL_ttf 仅在 32 位版本中。 我假设 Visual Studio 足够聪明,可以在我请求 win32 应用程序时获取 \syswow64 中的 opengl 和 glu lib 文件。
会不会是因为wininet?还是我弄错了?
谢谢,
【问题讨论】:
-
你猜?所以你还没有真正尝试过调试它?您是否至少使用 Dependency Walker 进行了检查?
-
那是 STATUS_INVALID_IMAGE_FORMAT,您不能将 32 位 DLL 加载到 64 位进程中。猫和狗。
-
确实是猜测。我是一个新手,不熟悉这类问题。猫和狗,有效。
标签: c++ dll 64-bit binary-compatibility wow64