将混合模式应用程序项目(.exe)转换为混合模式动态库(.dll)

时间:2015-10-15 13:45:51

标签: visual-studio dll c++-cli mixed-mode

我有一个包含本机和托管C ++代码的项目。 其运行时支持设置为/clr。 其配置类型过去设置为Application,因此编译为.exe。这一切都很好。 但现在我想将这个项目用作另一个项目的库(.dll)。 所以我将配置类型更改为动态库,并将main()函数重命名为其他内容。 然后重建项目会产生以下两个错误。

Error   2   error LNK1120: 1 unresolved externals   C:\Projects\MyProject\Source\Debug\MyProject.dll    MyProject
Error   1   error LNK2001: unresolved external symbol _main C:\Projects\MyProject\Source\CppSource\LINK     MyProject

相应的输出如下。

1>------ Build started: Project: MyProject, Configuration: Debug Win32 ------
1>  Main.cpp
1>LINK : error LNK2001: unresolved external symbol _main
1>C:\Projects\MyProject\Source\Debug\MyProject.dll : fatal error LNK1120: 1 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

我忘记了什么吗?

1 个答案:

答案 0 :(得分:0)

正如Hans Passant建议的那样,入口点设置必须为空白。

这个答案主要是为了能够将这篇文章标记为已解决。