向基础Windows桌面程序添加DwmSetWindowAttribute时触发未解析外部符号错误
向基础Windows桌面程序添加DwmSetWindowAttribute时触发未解析外部符号错误
看起来你遇到的是Win32开发里很常见的链接器依赖问题,别慌,好多刚接触Win32 API的小伙伴都踩过这个坑😉
你已经正确添加了#include <dwmapi.h>头文件,这让编译器知道DwmSetWindowAttribute函数的存在,但链接器还需要找到这个函数的实际实现代码——它藏在dwmapi.lib这个系统库文件里,而你现在还没告诉链接器要去链接这个库,所以才会弹出“未解析外部符号”的错误。
给你两个简单的解决办法,选哪个都行:
方法一:在代码里直接加链接指令
在你添加的#include <dwmapi.h>下面,再加上一行代码:#pragma comment(lib, "dwmapi.lib")这个
#pragma指令会直接告诉VS的链接器自动去关联dwmapi.lib,不用改任何项目设置,非常方便。方法二:通过VS项目属性设置
- 右键你的项目,选择「属性」
- 在左侧导航栏找到「链接器」→「输入」
- 在「附加依赖项」的输入框里添加
dwmapi.lib - 点击「确定」保存设置
等你解决了链接问题,就能正常运行代码,开始折腾DwmWindowAttribute相关的功能啦。
备注:内容来源于stack exchange,提问作者RHILLE
相关产品推荐
相关产品推荐

