VS 2008中的QT应用程序构建在XP中不起作用

时间:2011-03-16 05:47:05

标签: windows visual-studio-2008 qt windows-7 windows-xp

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

我该如何解决这个问题。 enter image description here

1 个答案:

答案 0 :(得分:1)

我认为您需要在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上的导出。{1}}。但是在WinXP上使用msvcrt.dll的任何内容都没有尝试导入wcscpy_s,因此没有问题它不会被导出。

我建议您使用Dependency Walker(http://www.dependencywalker.com/)之类的内容来查找试图从wcscpy_s中删除丢失的msvcrt.dll符号的内容。我认为你有一个不属于WinXP的DLL或应该被重建为'XP兼容'的机会很好。