c++ - VS10 C++ - fatal error LNK 1120

标签 c++

我正在尝试创建一个简单的 C++ 应用程序,它可以搜索并列出我 PC 上的所有 .wav 文件。我试图找出 LNK 1120 错误但没有运气。谁能用这个为我指明正确的方向,并告诉我我在这里做错了什么?

#include "stdafx.h"
#include "iostream"
#include "Shlwapi.h"
#include "windows.h"

void FindFilesRecursively(LPCTSTR lpFolder, LPCTSTR lpFilePattern);

int _tmain(int argc, _TCHAR* argv[])
{
    LPCTSTR loc = "C://";
    LPCTSTR ft = ".wav";
    FindFilesRecursively(loc, ft);
    return 0;
}

void FindFilesRecursively(LPCTSTR lpFolder, LPCTSTR lpFilePattern)
{
    TCHAR szFullPattern[MAX_PATH];
    WIN32_FIND_DATA FindFileData;
    HANDLE hFindFile;
    // first we are going to process any subdirectories
    PathCombine(szFullPattern, lpFolder, _T("*"));
    hFindFile = FindFirstFile(szFullPattern, &FindFileData);
    if(hFindFile != INVALID_HANDLE_VALUE)
    {
        do
        {
            if(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
            {
                // found a subdirectory; recurse into it
                PathCombine(szFullPattern, lpFolder, FindFileData.cFileName);
                FindFilesRecursively(szFullPattern, lpFilePattern);
            }
        } while(FindNextFile(hFindFile, &FindFileData));
        FindClose(hFindFile);
    }
    // now we are going to look for the matching files
    PathCombine(szFullPattern, lpFolder, lpFilePattern);
    hFindFile = FindFirstFile(szFullPattern, &FindFileData);
    if(hFindFile != INVALID_HANDLE_VALUE)
    {
        do
        {
            if(!(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
            {
                // found a file; do something with it
                PathCombine(szFullPattern, lpFolder, FindFileData.cFileName);
                std::cout << (_T("%s\n"), szFullPattern);
            }
        } while(FindNextFile(hFindFile, &FindFileData));
        FindClose(hFindFile);
    }
}

这些是我收到的错误信息

1>------ Build started: Project: SearchForFile, Configuration: Debug Win32 ------ 
1>SearchForFile.cpp 
1>SearchForFile.obj : error LNK2019: unresolved external symbol __imp__PathCombineA@12 referenced in function "void __cdecl FindFilesRecursively(char const *,char const *)" (?FindFilesRecursively@@YAXPBD0@Z)
1>c:\users\User\documents\visual studio 2010\Projects\SearchForFile\Debug\SearchForFile.exe : fatal error LNK1120: 1 unresolved externals
> ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

最佳答案

PathCombine 函数在 Shlwapi.lib 库中,您需要将此库添加到您的项目链接器设置中。

打开您的项目设置并导航到“配置属性->链接器->输入”,然后转到“附加依赖项”选项并在其中添加库 Shlwapi.lib

关于c++ - VS10 C++ - fatal error LNK 1120,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17255772/

相关文章:

c++ - 围绕相机旋转 opengl c++/设置旋转中心

c++ - 类的构造函数和转换

c++ - 使用函数的返回类型作为另一个模板函数调用

c++ - 绑定(bind)到成员变量

c++ - 是否可以嵌套现有枚举类

c++ - 使用struct中的指针来更改数据

c++ float to sql server DECIMAL正确转换

c++ - 重用 boost::bind 调用的返回值的正确方法是什么?

c++ - 错误 : invalid conversion from ‘void*’ to ‘void* (*)(void*)’ - pthreads

javascript - Qt 和 JavaScript 映射数据