Visual Studio弹出窗口:“操作无法完成”

时间:2012-01-31 12:25:26

标签: .net visual-studio visual-studio-2015

当我尝试在本地或Team Foundation Server(TFS)上打开项目时,我会得到一个模态窗口告诉我:

  

无法完成操作:未指定错误

或者相同的消息,但是“未定义类...”而不是“未指定的错误”。

当我尝试将我的一些工作检查到团队基础服务器时,这些错误在今天早些时候开始发生。我曾尝试在同一台计算机上使用Visual Studio 2008,但我仍然遇到同样的错误。我也用谷歌搜索过,但没有一个解决方案似乎能帮助我。

我也安装了Windows Update的最新更新。

有什么想法吗?

33 个答案:

答案 0 :(得分:222)

您是否尝试删除Your_Solution_FileName.suo 文件?

.suo文件应与.sln文件位于同一文件夹中,或者位于.vs文件夹中,以用于较新版本的Visual Studio。可能隐藏.vs文件夹。


Visual Studio 2017更新
在VS 2017中,.suo文件位于不同的文件夹中:您可以在 .suo

中找到YourSolutionFolder\.vs\YourSolutionName\v15\.suo文件

隐藏.vs文件夹,.suo文件是没有名称的文件,只有.suo扩展名。



说明

.suo文件包含各种信息,例如打开的文件列表,以及一些未保存在解决方案文件中的首选项(如初始项目)和其他内容。

通常,您可以毫无问题地删除.suo文件。您可能必须在之后为您的解决方案设置StartUp Project

为了保持安全,您可以重命名.suo文件,然后重试启动解决方案,看看是否有这种帮助。

根据我的经验有时VS崩溃启动因为某些源代码中存在错误,并且由于该错误VS无法编译代码,然后崩溃,因为没有编译代码它无法在设计模式下显示表单。 在这种情况下,删除.suo文件将解决这种情况,因为它会重置打开的文件列表,因此解决方案可以在不打开/显示任何文件的情况下启动。


删除.suo文件时无效
以下是删除.suo文件无法解决问题时可以尝试的其他事项列表:

  • 重新启动计算机
  • 清除Windows临时文件夹
  • 从IDE清除解决方案(Menu \ Build \ Clean Solution)
  • 手动清理解决方案(删除/bin/文件夹中已编译的DLL / EXE并清空VS在/obj/文件夹中构建过程中创建的临时文件(组成解决方案的每个项目都有这些文件夹,所以清理它们))
  • 尝试逐个打开构成解决方案的每个项目并构建它,以了解产生问题的具体项目是哪个
  • 了解触发错误的更改/编辑/修改是什么,并将其撤消(源代码管理工具可以帮助...)
  • 如果您有自定义控件:请检查构造函数中的代码。即使在设计时,VS IDE也会调用自定义控件的构造函数,并且可能会发生奇怪的事情(在设计时某些属性不起作用,您的连接字符串可能未填充...)

作为最后的手段......

  • 尝试安装任何VS更新
  • 尝试禁用VS扩展(如果您安装了任何...)
  • 尝试更新解决方案中引用的任何外部DLL / Control
  • 尝试更新Windows

答案 1 :(得分:114)

有时只是关闭Visual Studio 2015 然后再次打开。

更新:Visual Studio 2017显然也是如此。

我在一些机器上发生过这种情况。

发生

  

“您是否尝试删除”Your_Solution_FileName.suo“文件?”

计算机崩溃,例如停电等...

适用于更新2 更新3 以及没有任何更新的新基地......

答案 2 :(得分:72)

VS 2015 - > 删除 ComponentModelCache中为我工作的所有文件:

C:\Users\**username**\AppData\Local\Microsoft\VisualStudio\14.0\ComponentModelCache

答案 3 :(得分:19)

我遇到了同样的问题,但删除.suo文件没有帮助。我可以加载项目的唯一方法是删除“Your_Project_FileName.csproj.user”文件。

-

几个月后我又遇到了这个问题,但这次删除“Your_Project_FileName.csproj.user”文件并没有像上次那样有所帮助。我终于设法将其跟踪到IIS Express问题。我从applicationhost.config中删除了该站点,让Visual Studio重新创建它,这样就可以最终加载项目了。

答案 4 :(得分:11)

对我来说,此问题是由以下文件中的<site>配置冲突引起的。

C:\Users\smunro\Documents\IISExpress\config\applicationhost.config

我编辑了此文件以删除以下元素中的所有site元素。您可能希望更具选择性,并尝试识别导致冲突的网站并将其删除。

<configuration><system.applicationHost><sites>

请注意,我在那里留下了<siteDefaults><applicationDefaults><virtualDirectoryDefaults>元素。

当我重新加载项目时,会自动创建一个新的<site>元素。

答案 5 :(得分:7)

确保在按下F5按钮之前输出窗口可见。如果您的输出窗口最大化,则重新启动时,Visual Studio有时不会重新打开输出窗口。

简单修复: 1.重新启动Visual Studio 2.在构建项目之前,使用View-&gt; Output Window

现在,当你构建时,它应该可以工作。

(我非常确定删除.suo和.user文件只能工作,因为它会将Visual Studio重置为默认布局,这样可以确保输出窗口可见。)

答案 6 :(得分:5)

从命令行运行eventvwr以查看它是否记录了任何应用程序错误。

这可能会为您提供更实用的实际错误消息。

答案 7 :(得分:3)

我不得不删除一个Web项目。

中有一个旧的引用DLL文件,我必须清理该Web项目,然后才能工作。

答案 8 :(得分:3)

我有同样的错误。我无法打开我的解决方案的任何类和组件。我删除了ComponentModelCache并测试了其他任何解决方案..但没有结果。最后它帮助了我:关闭你的视觉工作室并开启它!

答案 9 :(得分:3)

我在打开Razor Views时遇到了类似的问题

  • 我登录了我的Azure帐户,该帐户要求重新输入我的信用卡。
  • 重启VS 2015 Update 1

答案 10 :(得分:2)

解决方案: 在尝试构建/重建/清理我的.sln时,我正在进行此对话。要修复它,我需要停止绑定到应用程序的IIS站点并重新启动visual studio。 (然后再次启动您的网站。)

我是如何发现原因的: 似乎这是一个针对各种问题的非常通用的消息,我最终通过IIS跟踪我的特定问题到一些锁定的文件与事件日志。

删除所有网站的解决方案类似于“从轨道上进行核心”#34;应该作为最后手段使用的方法。

答案 11 :(得分:2)

我认为StyleCop就是这个问题的原因。所以,

  1. 关闭VS。
  2. 我删除了所有解决方案项目中的所有StyleCop.Settings和StyleCop.Cache文件。
  3. 我也删除了所有项目* .csproj.user文件。
  4. 重启VS.

答案 12 :(得分:2)

这仍然适用于Windows 2017 ..是的,您可以关闭Visual Studio并重新开始。但是为什么这个问题存在 - 为什么还没有修复呢?!

每当这种情况发生时(并且它发生了很多),它就会把焦点从仅仅产生代码......并增加沮丧和愤怒......这会导致仇恨......这又会导致痛苦......看看我在哪里去?

微软,停止引领我们走向黑暗面的道路!一劳永逸地解决这些烦恼......并恢复银河系的和平!

答案 13 :(得分:2)

我从解决方案中删除了一个旧项目,之后发生了错误。我必须在记事本中打开.sln文件并删除我删除的旧项目的.dll引用。之后它起作用了。

答案 14 :(得分:1)

“操作无法完成”错误也可能由引用解决方案中不再存在的另一个项目的C ++项目引起。

通常,从解决方案中删除项目时,Visual Studio会从解决方案中的其他项目中删除对它的任何引用。

然而,在我的情况下,我在解决方案之间共享项目,因此一个糟糕的项目引用设法潜入,并删除错误的引用修复了错误。

使用Visual Studio 2012。

答案 15 :(得分:0)

执行 dotnet --list-sdks 在 CMD 窗口中,检查您的 global.json 文件(隐藏在解决方案的根目录中)的版本是否与您安装的版本匹配。

答案 16 :(得分:0)

以上解决方案均不适合我。但是以下是:

  1. 在Windows资源管理器中打开当前文件夹
  2. 将文件夹手动移动到所需位置
  3. 打开.csproj文件。 VS然后将自动创建.sln文件。

答案 17 :(得分:0)

在我们的系统中,问题是在“调试”->“ myProject属性”->“ Web”中进行更改后出现的,特别是更改项目URL,然后关闭VS。重新打开后,VS无法解析新的URL,因此抛出了错误。不幸的是,由于无法加载项目,因此无法通过VS UI进行进一步的配置。

由于文件配置更改保留在myProject.csproj.user文件中,该文件位于项目的根文件夹中,因此只需删除myProject.csproj.user文件,就可以轻松解决问题。到那时,项目将被加载,然后在下一次以调试模式运行该项目时,将重新生成用户文件。

请注意,在可以访问整个应用程序之前,必须将重新生成文件中的项目URL从默认的http://localhost:58995更改为原始的https://localhost:44302,因为我们已将应用程序锁定在SSL下。您的端口可能不同。运行项目后,可以通过VS-调试-> myProject属性-> Web来完成此操作。

答案 18 :(得分:0)

enter image description here重新启动visual studio,因为Admin会在很多情况下继续工作。

答案 19 :(得分:0)

在我的情况下,'Silverlight 5 SDK'丢失了,所以我的silverlight项目没有加载。在尝试重新加载项目时,它显示“操作无法完成”消息。安装完成后,问题就解决了。

答案 20 :(得分:0)

我在vs 2019的iOS项目中遇到了类似的问题,它在Mac上的VM上运行,我关闭并重新启动了Visual Studio,问题就消失了

答案 21 :(得分:0)

对于Visual C ++项目,这可能是由格式不正确的vcsproj.filters文件引起的。

在我的情况下,有人执行了手动分支合并,并没有正确合并过滤器文件。 Visual Studio仍然在没有任何警告的情况下加载和构建文件,但是在尝试添加或删除项目中的文件时会发出“未指定的错误”警告。

扫描您的vcsproj.filters文件,查找看似这样的重复条目或行并删除它们。关闭并重新打开项目。

<ClInclude Include="..\..\path\to\sourcefile.h" />

Visual Studio Enterprise 2017

答案 22 :(得分:0)

如果您在Windows资源管理器或其他应用程序的文件夹中,尝试从VS中删除该文件或在另一个应用程序中打开文件,也会发生此错误。 Windows有锁定文件夹和文件的习惯,尤其是在联网计算机上。偶尔使用Process Explorer可以打破锁定,但是最简单的方法是退出文件夹或关闭有问题的文件。

答案 23 :(得分:0)

我删除了所有.suo和.user文件并重新启动了VS 2008.但它对我没用。 以下步骤对我有用。

Open project file (.csproj) in notepad.
Removed all configurations from <Configurations></COnfigurations> tag.
Then add one by one configuration and reload project in VS.
Build the project or view project properties.

答案 24 :(得分:0)

我从第三方应用程序(unity3d)升级到.NET4.6。当我尝试在启动时无法加载时重新加载解决方案时,我会收到此消息。我的解决方案是右键单击解决方案并选择“安装缺失的功能”,这促使我下载了我需要的内容。弹出窗口上的下载不起作用所以我刚刚安装了.NET目标包(4.6)并修复了它。

答案 25 :(得分:0)

重新启动Visual Studio解决了我的问题:)

答案 26 :(得分:0)

对于此问题,我通过删除包含Visual Studio项目用户选项的.user文件来解决此问题。可以在.sln文件所在的位置找到此文件。 此外,从项目中删除此文件后,请确保重新加载您的解决方案,以使其生效。

答案 27 :(得分:0)

在我关闭Visual Studio(2015社区版)之后为我工作,打开它并再次打开项目。发生在我身上,因为我在另一个项目中使用这个项目作为依赖项并且在另一个实例中打开但是更改了没有被模仿。

答案 28 :(得分:0)

在Visual Studio 2005中处理VB.Net项目时,我多次遇到过这个问题。通常,在应用程序的调试属性中禁用'启用Visual Studio宿主进程'选项可以解决我的问题。通常,启用托管流程时,对某些API的调用可能会受到影响。

要取消选中此选项,您需要按照以下步骤操作:

  • 在解决方案资源管理器中右键单击您的项目
  • 选择属性
  • 在“调试”选项卡下,您会找到启用Visual Studio托管过程的复选框选项。取消选中此选项。
  • 保存更改

答案 29 :(得分:0)

如果您正在使用Visual Studio 2015并使用ASP.NET,请创建一个新网站,将以前的文件复制到新网站并构建您的网站。您的旧项目仍然引用一些旧的启动参数。

答案 30 :(得分:0)

对我来说,这是因为我添加了一个条目来将IISExpress中的网站绑定到特定的IP地址,并且我的IP地址已经更改。我从事件日志中得到了一个线索。

希望这有助于某人!

答案 31 :(得分:0)

没有.SUO文件,但删除.user文件有效。 仅供参考:我正在调试Silverlight项目

答案 32 :(得分:0)

转到“运行”并键入&#34; inetmgr&#34;,即打开IIS并在右下角的“操作”窗口中,选择选项更改&#34; .NET Framework版本&#34;。更改。

之后,重新安装Visual Studio 2010.它可以在我的计算机上运行,​​这就是共享的原因。