2011-11-01 427 views
8

我对Visual Studio 2010有一个很奇怪的问题。Visual Studio文件只能用记事本打开

我的程序有一些内存问题,所以我必须经常重启。在最后一次重新启动后,我的一个头文件已被自动破坏,并且现在只能通过记事本打开(甚至可以从Visual Studio的内部环境中打开,而放开(仅显示汇编代码)或者当我去此文件的文件夹并执行“使用Visual Studio打开”,它的打开它的记事本)。

I found the problem在Microsoft论坛中,但没有任何解决方案的想法。

+2

您是否尝试过在您的链接中发布的解决方案? “将文件另存为Unicode” –

+0

由于*程序*中的内存问题,您必须重新启动?它是否在特权模式下运行? – thkala

+0

那么,该程序可能需要所有的内存空间,然后重新启动是我知道的唯一选项:(关于unicode-没有在我的nodepad上找到这个选项,但一个朋友告诉我,也许notpad ++会来我的救救,我现在尝试它 – Bartolinio

回答

6

我最近有同样的问题。我相信这个文件被非打印字符损坏;在记事本中看起来很好,除了每行都缩进一个空格。

要解决此问题,我必须在记事本中打开文件,然后删除/删除原件,通过向项目添加新项目来重新创建它,然后从记事本中复制旧文件的内容。

我正在使用VS Express 2013,它将自己的格式设置为粘贴文本,所以缩进在此时消失。 Mercurial不会在损坏文件和新文件之间显示任何差异(除了我刚刚添加的一些代码)。

+1

不可打印的字符会导致这种效果。我有一个带有一个ASCII字符27的文本文件,并且Visual Studio 2012和2015都将其吐出到记事本中。 – Mike

3

如果Visual Studio无法识别文件的编码,如果文件已损坏(在我的情况下是由于电源故障),通常会出现这种情况,它将默认使用记事本打开文件。

虽然@Sammler很幸运,因为他的损坏文件是可恢复的(通过在一个更宽容的文本编辑器中打开半损坏的文件),但不能保证这将是这种情况,并且您可能会因输工作/文件内容。

1

同样的事情发生在我身上。

这发生在我的Windows VM无响应之后。在我的Mac上使用VMWare Fusion,我做了“强制关机”。当它恢复时,我正在处理的文件在记事本中打开,似乎是空白的。

我用Notepad ++打开了文件,发现文件内容只有一串NUL字符(黑色背景显示字符)。我肯定VS看到了这一点,并决定要做的事情是显示已损坏的数据。显然,Force-Shutdown造成了这种情况,所以我唯一的办法是从源代码控制中获得备份。

相关问题