我正在 Visual Studio 2010 Ultimate Edition 下开发一个项目。当我按下“开始调试”按钮时,编译开始并出现错误
“错误链接 1310:pure 不支持导出。MSIL 图像在 ....”
我不知道如何解决这个问题,这似乎是公共语言运行时编译中的一个选项问题,但我不明白这部分文档http://msdn.microsoft.com/en-us/库/k8d11d4s%28v=vs.90%29.aspx。
我正在 Visual Studio 2010 Ultimate Edition 下开发一个项目。当我按下“开始调试”按钮时,编译开始并出现错误
“错误链接 1310:pure 不支持导出。MSIL 图像在 ....”
我不知道如何解决这个问题,这似乎是公共语言运行时编译中的一个选项问题,但我不明白这部分文档http://msdn.microsoft.com/en-us/库/k8d11d4s%28v=vs.90%29.aspx。
好吧,将选项从 /clr:pure 更改为只是简单的 /clr ,它将停止抱怨。右键单击您的项目,属性,常规,“公共语言运行时支持”设置。
/clr:pure 选项强制编译器只省略 IL,不允许使用任何机器代码。您不能使用该选项导出函数,编译器必须为导出发出一个存根,以确保加载 CLR 并且代码从本机执行转换为托管执行。该存根需要机器代码。
从这个问题中无法猜测这是否是您真正想要的。/clr:pure 选项通常没有多大意义,您不妨用 C# 或 VB.NET 编写代码。如果您需要与本机代码互操作,C++/CLI 语言是首选的武器。导出存根当然很好,它使您不必自己托管 CLR 或迷失在 COM 编程中。但请注意,它并不是特别快。