我已经在为我的学位项目在XNA中进行游戏开发工作了三个月......准备收尾并提交时,突然出现了蓝屏。电脑重新启动后,我的 main.cs 文件中充满了愚蠢的空格。没有代码了。这就是从我完整的源代码中省略掉的一切......我该怎么办?请帮帮我。
谢谢
另外:我要哭了。
我已经在为我的学位项目在XNA中进行游戏开发工作了三个月......准备收尾并提交时,突然出现了蓝屏。电脑重新启动后,我的 main.cs 文件中充满了愚蠢的空格。没有代码了。这就是从我完整的源代码中省略掉的一切......我该怎么办?请帮帮我。
谢谢
另外:我要哭了。
经常提到将文档保存或使用源代码管理的人真的是傻瓜,对于这个问题一无所知。我一直按照规范操作,甚至配置了自动恢复功能,但在蓝屏后回来时发现源文件是空的!经过一番调查,我意识到这是一个已知的Visual Studio bug(错误)。我的建议是使用云存储服务,例如GoogleDrive,在任何时候都保留源文件的副本。
我也遇到了这个问题,正如 @Eric J 建议的那样,我从最新编译生成的dll文件中反编译出了我的代码。
“清零文件”是 SSD 硬盘上特有的现象。由于某些原因,对这种设备的写入实际上是清零+写入的组合。因此,你有可能会丢失文件。我用了两个不同厂商生产的 SSD 硬盘,都出现过这种情况。我曾经因此丢失过一小时的工作内容,两次(当然,我正在使用代码版本控制系统,并且与此无关,正如本文所述)。
为了解决这个问题,你可以在编辑文件时查看一些 IDE 插件来进行备份。
下面是一些相关链接。
MSDN:
插件:
讨论:
如何还原文件:
在我的情况下,我使用了恢复软件,可以对驱动器进行低扫描以查找丢失或覆盖的文件。简单的未删除软件在这里无法帮助。上一次我使用了Ontruck Easy Recovery Pro 5.0
,但目前它无法检测到新硬件。上一次使用的是 O&O Disk Recovery 8
。两者都是共享软件。有时它会恢复整个文件,有时只恢复部分(按512字节块或类似方式,其他部分填充为零)。如果您知道所需的文件扩展名,则可以选择文件扩展名(可能会更快地恢复,但不确定)。扫描后,选择过滤器无法按预期工作(不要问为什么),因此需要手动打开文件丢失的目录。我遇到了一次常见的停电,这在我的国家很普遍。通常当VS要求我恢复文件时,我总是选择不恢复,因为我曾经有过在旧版VS 2005中的不良经历。但这次在VS2019中,由于我有很多未手动保存的工作,所以我选择了恢复。
结果它给了我一个空文件,里面全是[nul]字符,让我在一周的工作后手足无措。
如果您使用的是Windows 7操作系统,请右键单击文件夹或文件!进入其属性,查找“以前的版本”或类似选项。您可能能够恢复到早期版本。