VS2017 通过属性配置Qt的库,通过本地的x86编译器编译时,显示“应用程序无法正常启动(0x000007b),请单击“确定”关闭应用程序。”
现在可以确定的是
(1)换成x64的本地编译器,选择链接Qt对应MSVC_x64文件夹中的lib库下的x64版本程序是可以编译运行的,没有问题;
(2)x86本地编译器,编译不含Qt库的程序,也是正常没问题的;
win10;VS2017;Qt5.12.12;
VS工程文件夹下的,在项目名上右键属性页,修改相应的include包含路径,lib库路径等,没有用
通过VS2017,包含Qt相应模块,通过本地x86编译器,能够成功运行的
检查一下属性页设置的时候的 **配置 **和 **平台 **两个选择是不是和你用的x86是一致的, 有的时候改的的用的不一样
参考GPT和自己的思路,这个错误通常是由于32位应用程序试图加载64位库或者64位应用程序试图加载32位库引起的。在这种情况下,您需要确认您所使用的Qt库是否是x86版本,并且是否与您的x86本地编译器匹配。以下是一些可能的解决方法:
1 确认您所使用的Qt库是x86版本的,并且与您的本地编译器匹配。您可以在Qt安装目录下的MSVC_x86文件夹中找到x86版本的Qt库文件。
2 确认您的本地编译器是32位的,并且与您的Qt库匹配。您可以在VS2017中选择“工具”->“选项”->“项目和解决方案”->“VC++目录”,并确保您的“包含目录”和“库目录”中包含了正确的路径。
3 如果您的Qt库是通过使用不同的编译器或者版本编译的,那么您可能需要重新编译Qt库,以便与您的本地编译器匹配。
4 确认您的系统已经安装了所有必要的依赖项,例如Visual C++ Redistributable和DirectX等。
5 如果您的应用程序依赖于其他第三方库,请确认这些库也是x86版本,并且与您的Qt库和本地编译器匹配。
不知道你这个问题是否已经解决, 如果还没有解决的话:程序示例:
cpp
Copy code
#include <QtCore/QCoreApplication>
#include <QtCore/QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
qDebug() << "Hello, world!";
return a.exec();
}
在VS2017中创建一个新的Qt控制台应用程序项目,将上述代码复制到main.cpp文件中,然后编译和运行该程序即可。
需要注意的是,在VS2017中创建Qt项目时,需要选择包含Qt相应模块,如图所示:
image
此外,还需要在项目属性中配置Qt环境,如图所示:
image
配置完成后,就可以使用本地x86编译器编译和运行Qt程序了。