为什么我在编译 DLL 项目时收到错误 LNK1561 "Entry point must be defined"?

Why I receive error LNK1561 "Entry point must be defined" when I compile a DLL Project?

我尝试将一个非常简单的动态库项目编译为.dll 文件。 项目的名称是 "Library"。 我正在使用 Visual Studio 2015,项目属性如下:

Debug Properties

Release Properties

项目中只有两个文件:ClassA.h和ClassA.cpp。

ClassA.h中的代码是:

#ifndef CLASSA_H
#define CLASSA_H

using namespace std;

#ifdef LIBRARY_EXPORTS
#define CLASSA_API __declspec(dllexport) 
#else
#define CLASSA_API __declspec(dllimport) 
#endif

class ClassA
{
public:
    static CLASSA_API void func();
};


#endif

ClassA.cpp中的代码是:

#include "ClassA.h"
#include <iostream>


void ClassA::func()
{
    cout << "SUCCESS!" << endl;
}

当我尝试编译这个项目时,我收到这个错误:

Severity Code Description Project File Line Error LNK1561 entry point must be defined Library C:\Users\UX303\Documents\Visual Studio 2015\DLLTest\Library\LINK 1

可能是你的配置不对

请务必仔细检查您的 "Active Configuration"(调试/发布),看看您是否真的在构建 DLL。

我刚犯了这样的错误,遇到了这个问题。

在 64 位机器中,当 'Solution Platforms' 设置为 'x86' 时,我遇到了同样的错误。当我将 'Solution Platforms' 设置为 'x64'.

时错误消失