1

我有一个 ATL 项目,其中我必须使用系统命名空间来设置环境变量。我试过了:

#using <mscorlib.dll>
using namespace System; 

在我的 dllmain.cpp 文件中。

在构建时,我得到了:

致命错误 C1190:托管目标代码即使在添加 /clr 选项项目-> 属性-> 通用语言运行时支持后也需要“/clr”选项。

如果我删除#using mscorlib.dll,我会得到:

错误 C2871:“系统”:具有此名称的命名空间不存在

如何在我的 ATL 项目中使用此命名空间?

4

1 回答 1

1

请参阅MSDN 中的此链接

我在这里引用答案:

当您包含对 mscorlib.dll 的引用时,您需要让编译器知道您的目标是 .NET 运行时。控制它的编译器开关是 /clr - 因此您看到的错误消息。要从解决方案资源管理器窗格中的项目系统启用此选项,请右键单击您的项目,选择 Configuration Properties.General,然后选择“Common Language Runtime support”并从下拉列表中选择“Common Language Runtime Support (/clr )”。

在 C++ 中,标识符区分大小写:我怀疑名称应该是 System::Console。

于 2013-11-13T06:59:51.697 回答