2016-05-30 127 views
2

我尝试编译一个非常简单的动态库项目作为.dll文件。 该项目的名称是“库”。 我使用Visual Studio 2015和项目属性是这些:为什么我在编译DLL项目时收到错误LNK1561“入口点必须定义”?

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

+1

您是否阅读过https://msdn.microsoft.com/en-us/library/ky737ya4.aspx?f=255&MSPPError=-2147217396? –

+0

是的,但我没有得到好的结果。 – Radioga

回答

3

这很可能是您的配置不正确。

一定要仔细检查你的“主动配置”(调试/发布),看看你是否真的建立一个DLL。

我刚刚犯了这样一个错误,并且遇到了这个问题。

相关问题