【问题标题】:"#using" requires C++/CLI mode"#using" 需要 C++/CLI 模式
【发布时间】:2018-05-07 16:14:35
【问题描述】:

我的代码是这样开始的:

#include "stdafx.h"
#include <string>
#using <mscorlib.dll>
#using <System.Data.dll>
#using <System.dll>

using namespace System;
using namespace System::Data::OleDb;

但最终出现编译错误"#using" requires C++/CLI mode

我最初遇到了这个问题,并通过关注这篇帖子IntelliSense: "#using" requires C++/CLI to be enabled 设法解决了这个问题。昨天将 VS2017 更新到 15.3.0 版,现在又坏了。项目属性如下:

任何帮助将不胜感激。 P.

【问题讨论】:

  • 您确定文件特定设置具有相同的 CLR 支持设置吗?请记住,您可以单独设置和更改每个文件的属性。
  • @xMRi 我已经检查过了,据我所知没有问题。

标签: c++ visual-c++ c++-cli


【解决方案1】:

我遇到了同样的问题,并发现设置(公共语言运行时支持)仅为发布配置设置。我建议您检查解决方案发布/调试等中的所有配置。并设置 CLR 支持选项,它应该可以按预期工作。

【讨论】:

    【解决方案2】:

    您还可以通过将其放入文件中来从代码中控制此设置

    #pragma managed
    

    首先,我会搜索您的代码,以确保此#pragma 没有被用于在更早的地方关闭托管构建(也许是在某个#include 文件中?)。然后试着把它放在这个文件中>

    我不确定这是否会解决您的问题,但它至少应该消除文件未正确构建的担忧。也许错误消息可能会改变,让您更好地了解问题所在

    https://msdn.microsoft.com/en-us/library/0adb9zxe.aspx?f=255&MSPPError=-2147217396

    C++ CLI Correct way to use #pragma managed / unmanaged

    【讨论】:

    • 很遗憾没有。我已经重新启动,创建了新项目等。没有乐趣。我已经向 MS 提出了这个问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-04
    • 1970-01-01
    • 2015-07-24
    • 2018-06-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多