函数路径追加上未解决的外部符号错误



我正在尝试为在游戏中保存文件创建一个新目录,但在使用PathAppend时遇到未解决的外部符号错误。

if (SUCCEEDED(SHGetFolderPath(NULL, CSIDL_COMMON_DOCUMENTS, NULL, 0, path))) {
PathAppend(path, "AotDK\saves");
if (SHCreateDirectoryEx(NULL, path, NULL) != ERROR_SUCCESS) {
std::cout << "Error: " << GetLastError();
}
} else {
std::cout << "Error: " << GetLastError();
}

我知道这通常意味着我没有包含头文件,但从我可以收集的内容中,我已经包含了我需要的所有内容。我错过了一个吗?

#include "main.hpp"
#include <iostream>
#include <Windows.h>
#include <ShlObj.h>
#include <Shlwapi.h>

如果不是,我是否错误地构建了代码?我基于之前提出的问题的答案,所以我假设不是。

该错误并不意味着您没有包含头文件。 此错误表示您没有链接到相应的库。

错误是链接器错误,解决方案是在项目中包含库文件"Shlwapi.lib">

您可以在项目设置中包含 lib 文件。

致谢:Barmak Shemirani

打开项目属性,转到 Linker->Input 并将 Shlwapi.lib 添加到依赖项。就像一个魅力。

最新更新