VS 2008 中构建的 QT 应用程序在 XP 中无法运行

发布于 2024-10-22 09:50:57 字数 201 浏览 1 评论 0原文

大家好,我已经使用 QT 插件和 VS 2008 创建了一个应用程序。它在所有 Windows 系统中运行良好。 但是当我尝试在 XP 中运行相同的应用程序时,它显示错误:: 程序入口点 xxx 无法位于 xxx.dll 中。

我该如何解决这个问题。 在此处输入图像描述

Hello all i have created an application in VS 2008 using QT plugin & its is working fine in all the windows systems.
But when I try to run the same application in XP it is showing error :: Procedure entry point xxx could not be located in xxx.dll .

How can I solve this problem.
enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

心清如水 2024-10-29 09:50:57

我认为你需要在XP系统上安装VS 2008运行时。您可以通过多种方式执行此操作,包括:

更新:

您的程序在解析 msvcrt.dll 中查找的引用时似乎遇到问题,该引用是一个不直接属于 VS 2008 运行时 (msvcrt90.dll) 的系统 DLL。我使用 Qt 插件在 VS 2008 中测试了一些 Qt 演示,但我没有看到它们直接链接到 msvcrt.dll(正如我所期望的,程序链接到 msvcr90.dll)。

但是,当我使用 Dependency Walker (http://www.dependencywalker.com/) 查看程序时,我确实看到 msvcrt.dll 被拉入 - 这是链接到 的结果advapi32.dll(在我的 WinXP 系统上,到 msvcrt.dll 的链接是间接的 netapi32.dll)。我的 WinXP SP3 系统上的 msvcrt.dll 副本没有 wcscpy_s 的导出,而 Win7 上的则有。但在 WinXP 上使用 msvcrt.dll 不会尝试导入 wcscpy_s,因此不存在未导出的问题。

我建议您使用 Dependency Walker (http://www.dependencywalker.com/) 之类的工具来找出是什么试图从 msvcrt.dll 中提取丢失的 wcscpy_s 符号。我认为您很有可能拥有一个不属于 WinXP 的 DLL,或者应该重新构建为“XP 兼容”。

I think you need to install the VS 2008 runtime on the XP system. You can do that several ways, including:

Update:

Your program seems to be having a problem resolving a reference that's being looked for in msvcrt.dll - a system DLL that is not directly part of the VS 2008 runtime (msvcrt90.dll). I tested some of the Qt demos in VS 2008 with the Qt addin, and I don't see them directly linking to msvcrt.dll (as I expect, the programs link to msvcr90.dll).

However, when I look at the programs using Dependency Walker (http://www.dependencywalker.com/), I do see that msvcrt.dll is pulled in - a result of linking to advapi32.dll (on my WinXP system, the link to msvcrt.dll is indirect though netapi32.dll). The copy of msvcrt.dll on my WinXP SP3 system doesn't have an export for wcscpy_s while the one on Win7 does. But nothing using msvcrt.dll on WinXP attempts to import wcscpy_s, so there's no problem that it's not exported.

I suggest you use something like Dependency Walker (http://www.dependencywalker.com/) to find out what's trying to pull in the missing wcscpy_s symbol from msvcrt.dll. I think that chances are good that you have a DLL that doesn't belong on WinXP or should be rebuilt to be 'XP-compatible'.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文