QTCreater编程错误:LNK2019: 无法解析的外部符号 __imp__ShellExecuteW@24,该符号在函数 _main 中被引用 的 错误处理 及 添加外部库与头文件 的方法

本文主要是介绍QTCreater编程错误:LNK2019: 无法解析的外部符号 __imp__ShellExecuteW@24,该符号在函数 _main 中被引用 的 错误处理 及 添加外部库与头文件 的方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

QTCreater编程错误:LNK2019: 无法解析的外部符号 __imp__ShellExecuteW@24,该符号在函数 _main 中被引用 的 错误处理 及 添加外部库与头文件 的方法


下面是方法:

1. 编辑pro文件

LIBS += -Lmylibpath

LIBS += -lmylibfile


2. 编辑完成后执行"构建->执行qmake",完成。



附:qt pro文件编辑详解:

1. TEMPLATE
变量TEMPLATE描述了为建立目标文件而采用何种模板,即生成何种形式的Makefile文件。Qmake
工具定义了5种模板:
1. 应用程序App,为建立一个Qt应用程序创建Makefile文件;
2. 库lib,为建立引用程序库而创建Makefile文件;
3. 子工程 subdirs,为建立子目录下的目标文件创建一个Makefile文件,
子目录通过变量SUBDIRS指定(子目录下的工程文件也需要指出使用何种模板);
4. VC应用程序vcapp,为Visual Studio 生成一个应用程序工程,仅仅用语Windos操作系统.
5. VC库vclib,为Visual Studio生成一个应用程序库工程,仅仅用语Windows操作系统.

{

app – 建立一个应用程序的makefile。这是默认值,所以如果模板没有被指定,这个将被使用。

lib – 建立一个库的makefile。

vcapp – 建立一个应用程序的Visual Studio项目文件。

vclib – 建立一个库的Visual Studio项目文件。

subdirs – 这是一个特殊的模板,它可以创建一个能够进入特定目录并且为一个项目文件生成makefile并且为它调用make的makefile。

“app”模板
“app”模板告诉qmake为建立一个应用程序生成一个makefile。当使用这个模板时,下面这些qmake系统变量是被承认的。你应该在你的.pro文件中使用它们来为你的应用程序指定特定信息。

}

2.HEADERS - 应用程序中的所有头文件的列表。

3.SOURCES - 应用程序中的所有源文件的列表。

4.FORMS / INTERFACES – 应用程序中的所有.ui文件(由Qt设计器生成)的列表。    eg.INTERFACES = filename.ui

5.LEXSOURCES – 应用程序中的所有lex源文件的列表。

6.YACCSOURCES – 应用程序中的所有yacc源文件的列表。

7.TARGET – 可执行应用程序的名称。默认值为项目文件的名称。(如果需要扩展名,会被自动加上。)

8.DESTDIR – 放置可执行程序目标的目录。

9.DEFINES – 应用程序所需的额外的预处理程序定义的列表。

10.INCLUDEPATH - 应用程序所需的额外的包含路径的列表(include文件路径列表)。

11.DEPENDPATH – 应用程序所依赖的搜索路径(描述了建立应用程序所依赖的其他文件所在的路 径)。

12.VPATH – 寻找补充文件的搜索路径。

13.DEF_FILE - 只有Windows需要:应用程序所要连接的.def文件。

14.C_FILE - 只有Windows需要:应用程序的资源文件。

15.RES_FILE – 只有Windows需要:应用程序所要连接的资源文件。

16.CONFIG变量
配置变量指定了编译器所要使用的选项和所需要被连接的库。配置变量中可以添加任何东西,但只有下面这些选项可以被qmake识别。

下面这些选项控制着使用哪些编译器标志:

release – 应用程序将以release模式连编。如果“debug”被指定,它将被忽略。

debug – 应用程序将以debug模式连编。

warn_on – 编译器会输出尽可能多的警告信息。如果“warn_off”被指定,它将被忽略。

warn_off - 编译器会输出尽可能少的警告信息。
17 .  LIBS

这里可以选择我们要包含的库,例如我们的工程要用到libz.so的一个压缩库,我可以怎么写:

    LIBS += -lz

或是用到我们image目录下的libimage.so库,那么可以这么写:

    LIBS += -L../image/image



注意事项:

注:qmake -project 可以生成pro文件(可以根据项目需要,编辑该文件)
qmake 可以生成Makefile文件
make 编译
使用qmake -project时,会把本目录及其子目录内所有.cpp .h文件加入到项目输入文件中,使用时注意移去其他无用的文件。
qmake生成的Makefile文件,可以根据需要做相应修改。



这篇关于QTCreater编程错误:LNK2019: 无法解析的外部符号 __imp__ShellExecuteW@24,该符号在函数 _main 中被引用 的 错误处理 及 添加外部库与头文件 的方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/701079

相关文章

Springboot控制反转与Bean对象的方法

《Springboot控制反转与Bean对象的方法》文章介绍了SpringBoot中的控制反转(IoC)概念,描述了IoC容器如何管理Bean的生命周期和依赖关系,它详细讲解了Bean的注册过程,包括... 目录1 控制反转1.1 什么是控制反转1.2 SpringBoot中的控制反转2 Ioc容器对Bea

MySQL 日期时间格式化函数 DATE_FORMAT() 的使用示例详解

《MySQL日期时间格式化函数DATE_FORMAT()的使用示例详解》`DATE_FORMAT()`是MySQL中用于格式化日期时间的函数,本文详细介绍了其语法、格式化字符串的含义以及常见日期... 目录一、DATE_FORMAT()语法二、格式化字符串详解三、常见日期时间格式组合四、业务场景五、总结一、

Python中配置文件的全面解析与使用

《Python中配置文件的全面解析与使用》在Python开发中,配置文件扮演着举足轻重的角色,它们允许开发者在不修改代码的情况下调整应用程序的行为,下面我们就来看看常见Python配置文件格式的使用吧... 目录一、INI配置文件二、YAML配置文件三、jsON配置文件四、TOML配置文件五、XML配置文件

C++实现回文串判断的两种高效方法

《C++实现回文串判断的两种高效方法》文章介绍了两种判断回文串的方法:解法一通过创建新字符串来处理,解法二在原字符串上直接筛选判断,两种方法都使用了双指针法,文中通过代码示例讲解的非常详细,需要的朋友... 目录一、问题描述示例二、解法一:将字母数字连接到新的 string思路代码实现代码解释复杂度分析三、

mysql8.0无备份通过idb文件恢复数据的方法、idb文件修复和tablespace id不一致处理

《mysql8.0无备份通过idb文件恢复数据的方法、idb文件修复和tablespaceid不一致处理》文章描述了公司服务器断电后数据库故障的过程,作者通过查看错误日志、重新初始化数据目录、恢复备... 周末突然接到一位一年多没联系的妹妹打来电话,“刘哥,快来救救我”,我脑海瞬间冒出妙瓦底,电信火苲马扁.

Spring中@Lazy注解的使用技巧与实例解析

《Spring中@Lazy注解的使用技巧与实例解析》@Lazy注解在Spring框架中用于延迟Bean的初始化,优化应用启动性能,它不仅适用于@Bean和@Component,还可以用于注入点,通过将... 目录一、@Lazy注解的作用(一)延迟Bean的初始化(二)与@Autowired结合使用二、实例解

SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)

《SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)》本文介绍了如何在SpringBoot项目中使用Jasypt对application.yml文件中的敏感信息(如数... 目录SpringBoot使用Jasypt对YML文件配置内容进行加密(例:数据库密码加密)前言一、J

Spring Boot 中正确地在异步线程中使用 HttpServletRequest的方法

《SpringBoot中正确地在异步线程中使用HttpServletRequest的方法》文章讨论了在SpringBoot中如何在异步线程中正确使用HttpServletRequest的问题,... 目录前言一、问题的来源:为什么异步线程中无法访问 HttpServletRequest?1. 请求上下文与线

golang panic 函数用法示例详解

《golangpanic函数用法示例详解》在Go语言中,panic用于触发不可恢复的错误,终止函数执行并逐层向上触发defer,最终若未被recover捕获,程序会崩溃,recover用于在def... 目录1. panic 的作用2. 基本用法3. recover 的使用规则4. 错误处理建议5. 常见错

解读为什么@Autowired在属性上被警告,在setter方法上不被警告问题

《解读为什么@Autowired在属性上被警告,在setter方法上不被警告问题》在Spring开发中,@Autowired注解常用于实现依赖注入,它可以应用于类的属性、构造器或setter方法上,然... 目录1. 为什么 @Autowired 在属性上被警告?1.1 隐式依赖注入1.2 IDE 的警告: