随机cs文件无法在visual studio 2012中打开

时间:2013-09-23 19:57:34

标签: c# visual-studio debugging visual-studio-2012

所以这是我的泡菜。我正在使用Visual Studion 2012并且一直在开发我的应用程序。我今天打开了VS,我可以像往常一样打开所有文件(cs文件)。按下“开始”按钮开始调试后......我发现xxx.cs未找到错误。

  

|找不到来源| < -The tab

     
    

未找到xxx.cs

         
      

您需要找到xxx.cs来查看当前调用堆栈帧的源。

             

请尝试以下选项之一:

                           

来源搜索信息

             

找到'[PATH] \ xxx.cs'的来源。校验和MD5 {14 3a e d4 8d 6c e5 0 e2 56 3e 4b 3 dc 22 7a}

             

确定校验和是否与以下位置匹配:

             

1:[PATH] \ xxx.cs Checksum MD5 {14 3a e d4 8d 6c e5 0 e2 56 3e 4b 3 dc 22 7a}校验和匹配。

             

文件'[PATH] \ xxx.cs'存在。

             

调试器在以下位置找到了源:

             

1:[路径] \ xxx.cs校验和{14 3a e d4 8d 6c e5 0 e2 56 3e 4b 3 dc 22 7a}

             

调试器将使用位置1的源。

    
  

现在,如果我点击链接的文本来浏览文件......没有任何反应。我停止调试器并双击xxx.cs,也没有任何反应。 我可以点击其他cs文件和一些工作,有些则不然。看起来完全随机...... 以前有人经历过这个吗?

我通过工具|重置了所有设置导入和导出设置,但没有做到这一点。

xxx.cs和所有其他文件都包含数据(至少VS应该打开一个空文件!)我很困惑发生了什么......有什么想法吗?

此致

安东尼奥

6 个答案:

答案 0 :(得分:3)

在我的情况下,文件有一些unicode字符或其他编码,可能是文件损坏的结果。我右键单击 - >打开...->并使用编码"切换到" C#编辑器选项。请注意,这会提示每次询问是否应该自动检测编码,这非常烦人但希望您能找到有问题的字符并修复它们。

答案 1 :(得分:3)

我在VS 2012中随机出现了这个问题,虽然我没有找到根本原因(我觉得这是Visual Studio中的一个错误,因为它在2010年没有发生在同一个项目中),我发现了禁用恼人的症状,然后继续调试。在工具 - >中可以选择关闭校验和文件检查。选项 - >调试 - >一般:

要求源文件与原始版本完全匹配 告诉调试器验证源文件是否与用于构建正在调试的可执行文件的源代码版本匹配。如果版本不匹配,系统将提示您查找匹配的来源。如果找不到匹配的源,则在调试期间不会显示源代码。

http://msdn.microsoft.com/en-us/library/85yzd16c.aspx

缺点是,如果您在特定文件中有受此问题影响的断点,那么您可能会发现VS不会跟踪到该文件,因此只有在导致文件导致时才应使用此选项(IMO)你不在乎调试的麻烦。

我会更新我的答案。

答案 2 :(得分:1)

我也遇到过Visual Studio 2013(a.k.a。版本12.0)的这个问题,让我疯狂。修复,卸载,重新安装,删除.dlls,.csprojs,.suos,清理,重建。什么都没有帮助。作为干净安装Windows之前的最后手段,我通过这些步骤成功解决了问题:

  • 通过Windows“添加/删除功能”删除VS.
  • 在%AppData%,%ProgramData%和Program Files(x86)中删除了引用Visual Studio 12.0的所有文件和文件夹(最后一个文件在我卸载后留下了总计200 MB + 的13k文件)
  • 重新启动
  • Ran CCleaner的文件和注册表清理工具
  • 使用regedit搜索“Visual Studio 12”和“12.0”,基本上删除引用Visual Studio 12.0的所有键/文件夹(保留纯文件引用,因为它们是一个疯狂的数字)
  • 重新启动,再次运行CCleaner,重新启动。
  • 再次安装Visual Studio 2013,将路径从“... 12.0”更改为“... 12”。
  • 手动应用Windows修补程序(KB2664825),在安装过程中以某种方式失败。

完成,它有效!

另一方面,VS2010和VS2012的并行安装在VS2013问题的任何一点都没有受到影响。

答案 3 :(得分:0)

好吧,这可能没有解决你的问题,但我所做的是删除我的.suo文件,它停止提示我输入那些很久以来的文件。

我只是在这里张贴这个可能出现的人,并发现这有用。

答案 4 :(得分:0)

https://stackoverflow.com/a/10028684/4222878对我来说非常适合。 在解决方案调试忽略列表中删除文件路径后,您应该重建整个解决方案。

答案 5 :(得分:0)

我遇到了同样的错误,这是因为我的dll在一个项目中没有及时了解另一个项目依赖项。我尝试重建,删除bin文件,清除缓存和其他一些东西。这些都不适合我。

以下是我的方案的一个简单示例。项目A依赖于项目B.每当项目A在项目B中调用方法的调试时,我收到错误。

有什么方法可以解决我的问题:

  • 将项目A和项目B都放入单个VS解决方案中。 (如果你有很多项目都相互依赖,你可以将它们全部放在同一个解决方案中,我实际上有9个)
  • 清理并构建两个项目。 (让他们在新解决方案中同步)
  • 将您的启动项目设置为项目A(或您之前尝试调试的任何内容。)

现在你应该可以逐步完成两个项目的代码。