代码之家  ›  专栏  ›  技术社区  ›  djv

Visual Studio 2017未突出显示错误

  •  6
  • djv  · 技术社区  · 7 年前

    我最近从Visual Studio 2012升级到2017(更新到版本15.3.5),并且对IDE有一些问题。

    在某个项目中,我没有错误下划线。

    enter image description here

    在错误列表窗格中,“仅生成”实际显示 更多 信息比“构建+智能感知”

    enter image description here

    此外,选择“Build+IntelliSense”后,我只能在输出窗口中看到编译器错误。以下是生成失败后的错误列表

    enter image description here

    但输出窗口有以下内容:

    3>-----生成已开始:项目:。。。,配置:调试任何CPU------
    3>C: \签出。。。\主窗体。vb(454,27):错误BC30311:Module1类型的值。“aClass”无法转换为“Module1”。B类'。

    并非所有项目都会发生这种情况。我做了一个新项目,看看我是否可以复制,但我不能。这是一个具有相同代码的新项目,其中错误在代码中加下划线,“构建+智能感知”有效。

    enter image description here

    我甚至对vbproj文件中的xml进行了排序,并“区分”了有问题的项目和新项目,没有明显的差异会导致这种情况。两者都引用相同的编译器。这两个项目都有目标。Net 4.6.2和设置为仅为x86编译。有问题的项目引用了其他几个项目(C#和VB.Net)加上第三方dll和nuget包。除了这些差异之外,没有别的了。

    其他项目(C#和VB.Net)在有问题的项目的解决方案中工作良好。

    我在网上看到过类似的问题,但没有一个解决方案对我有效。我在安装程序中尝试了“修复”选项。然后我卸载了Visual Studio并重新安装。

    更新:

    改变目标框架似乎有一些效果。具有这种行为的项目针对4.6.2,没有显示错误,当它更改为4.7时,显示编译错误。然后改回4.5,它显示了一个错误。然后改回4.6.2,没有显示任何错误。事实证明,重复这个过程是不可重复的。4.7、4.5、4.6、4.6.2-不管怎样,现在都没有显示错误。

    链接此Microsoft页面也很重要 https://developercommunity.visualstudio.com/content/problem/7759/no-errors-displayed-in-the-error-list.html 许多其他人似乎也有类似的问题。

    1 回复  |  直到 7 年前
        1
  •  4
  •   djv    7 年前

    我已经解决了这个问题,至少在我的解决方案中。

    我在玩弄项目引用,发现当一个特定的项目没有被另一个项目引用时,我在下划线上出现了错误。我经历了一个改变框架版本目标的过程,直到有些事情奏效。

    我所有的项目以前都是有针对性的。净额4.6.2。通过在所有项目上都以4.7为目标,我现在可以在错误窗口中获得正确的错误下划线和报告。

    我不确定这是否对每个人都是一个解决方案,我需要做一些额外的工作才能将我的项目部署到生产环境中,但我可以接受这一点。