【发布时间】:2011-11-17 12:42:00
【问题描述】:
我正在运行一个简单的 32 位应用程序。它使用 Qt 和其他库。找出清单后,我有一个包含应用程序、清单和依赖 DLL 的文件夹。直接从 USB 记忆棒在 Windows 7 64 位下的目标机器上运行它。将其复制到 D:\ 驱动器上的文件夹中即可。
将其复制到Program files (x86) 下的文件夹中,我得到:
R6034。应用程序试图错误地加载 C 运行时库。
我的可执行文件有一个清单。正如本论坛其他地方所建议的那样,我在文件夹中也有msvc*.dll 的清单。那么,为什么除了它应该在的地方之外,它在任何地方都有效?
【问题讨论】:
-
您是否考虑过使用静态运行时而不是 DLL?
-
本。是VC2008。哈利,是的,我有,但我希望不要去那里。在我看来,我不明白关于 Windows 7 64 位的一些东西。构建为 32 位的相同应用可以完美运行。
-
我认为如果你把它放在 32 位机器上的 Program Files 中它可以工作?哪个版本的 Visual Studio 和哪种语言?
-
只是为了确保,使用进程监视器来确认您的 MSVC DLL 副本正在加载。
-
Harry,它是在 VS2008 下构建的带有 Qt 的 C++。我会试试你的建议。
标签: windows qt dll 64-bit runtime.exec