【问题标题】:VS2012 missing compiler errors in error list after upgrade from vs2010从 vs2010 升级后,VS2012 在错误列表中缺少编译器错误
【发布时间】:2015-06-05 22:26:58
【问题描述】:

刚刚升级到 Visual Studio 2012,连接到我的 TFS 解决方案,将所有项目从 v4.0 升级到 v4.5。解决方案编译并运行良好。极好的。

现在我正在添加新代码,但错误列表输出窗口中未列出编译器错误。我只看到与找不到 .dll 文件相关的错误。
例如Error 1 Could not copy the file "C:\SourceCode\<snip>Library.dll" because it was not found. C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets

好吧当然找不到,我放了一行:

thing bob = new thing();

进入一个班级。
不幸的是,在编译过程中没有报告这个错误。
即使是详细的编译器输出在 csc.exe 任务之后也没有显示:

6>Task "Csc"
6>  C:\Windows\Microsoft.NET\Framework\v4.0.30319\Csc.exe <snip>
6>Done executing task "Csc".

如果我在 cmd 窗口中运行 csc.exe 任务,您可以清楚地看到异常:

Microsoft (R) Visual C# Compiler version 4.0.30319.17929
for Microsoft (R) .NET Framework 4.5
Copyright (C) Microsoft Corporation. All rights reserved.
State\ConditionalAction.cs(16,13,16,18): error CS0246: The type or namespace name 'thing' could not be found (are you missing a using directive or an assembly reference?)
State\ConditionalAction.cs(16,29,16,34): error CS0246: The type or namespace name 'thing' could not be found (are you missing a using directive or an assembly reference?)

有没有人见过这个问题或有什么想法?

编辑更多证据

似乎报告了“硬”编译错误,即从垃圾行中删除分号会给我一个编译器错误:

事物鲍勃 = 新事物()

错误 2 ;预期 C:\\ConditionalAction.cs 16

但是,与缺少类型有关的错误仍然不存在。
编辑 2 个更多证据

在开始运行和调试 MVC 应用程序 (F5) 时,VS 2012 似乎无法正确识别项目存在缺少类型的错误。 我刚刚删除了有问题的代码,运行了应用程序,重新插入了有问题的代码,重新运行了应用程序,VS 愉快地运行了以前编译的应用程序版本,没有抱怨。

【问题讨论】:

  • 不是 100% 确定您要问什么,但“Visual C++ 2012”是帮助 >> 关于 Microsoft Visual Studio 下已安装的产品之一。
  • @Yve 我已尝试上述方法无济于事,确保我以管理员身份明确运行所有四个安装,然后重新启动。有关信息,我正在运行 x64 版本的 Visual Studio Enterprise。我还可以提供哪些其他信息来帮助您?

标签: visual-studio-2012


【解决方案1】:

我在升级到 visual studio professional 2012 时遇到了 Visual Studio 问题。

首先,检查基本面。

  1. 您是否以具有管理权限的用户身份使用计算机? 我怀疑你是,但如果不是,你需要有管理权限。

  2. 您是否检查过是否有任何文件被您的防火墙阻止? 当我切换到完整版的 Avast 时,我发现我必须禁用 File System Shield 当我尝试运行我的 Visual Studio 项目时,它喜欢删除我的可执行文件。

  3. 确保您在 4.5 Framework 中创建项目。

我所做的是,我最终卸载了与两个 Visual Studio 下载相关的所有内容。如果您能够将项目文件删除并保存在其他地方,然后将它们带回来。浏览你所有的程序文件,看看是否有任何东西隐藏在错误的文件夹中,然后检查你的 C 盘。

这意味着下载并重新安装(全新):

  1. Install Windows 7 Service Pack 1

  2. Visual C++ 2012 Redistributable Package (arm.exe, x64.exe and x86,exe)

  3. Microsoft .NET Framework 4.5

  4. Microsoft Visual Studio 2012 SDK

请阅读 MSDN 关于Visual Studio 2012 update 3 的引用

注意 Visual Studio 和 Team Foundation Server (TFS) 安装 力学不同。 Visual Studio 更新安装在 任何已经安装在计算机上的东西。 TFS 更新是 取代计算机上安装的任何东西的完整布局。 在尝试应用 TFS 更新之前,请确保您拥有完整的 备份您当前的数据库。如果 TFS 更新安装 失败,您将无法重新启动更新或回滚到 较早版本的 TFS,无需执行还原过程。

有关Visual Studio 2012 Update 3的更多信息,请访问此页面。

这里也是有用的链接Configuring Programs for 64-Bit (Visual C++)

【讨论】:

  • @Yve ,在我放弃希望之前,我已经尝试了上述方法,但没有运气,但快速澄清一下 - 安装 C++ 可再发行组件(第 2 点)时,我是否只需要安装 x64 版本,如我正在运行 x64 Windows 7 Ultimate,还是全部三个?我假设只有 x64。
  • @Yve 只是为了确认一下,我现在已经完成了你提到的步骤,安装了 x86 和 x64 redist。没有成功。
猜你喜欢
  • 2013-09-17
  • 1970-01-01
  • 1970-01-01
  • 2014-08-10
  • 1970-01-01
  • 2021-06-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多