编辑和保存文本文件始终显示“另存为”对话框

时间:2013-07-26 21:20:41

标签: visual-studio-2012 visual-studio-2013

我一直想使用Visual Studio 2013 Preview来编辑一些简单的Python脚本。我打开脚本,像往常一样编辑。但当我点击“ctrl-s”时,Visual Studio 2013 Preview会将我带到“另存为”对话框。

文件名未更改,文件路径正确,因此不会造成损坏。

如何解决这个问题,让我能够按照我的预期进行保存?

4 个答案:

答案 0 :(得分:11)

尝试以管理员身份运行VS或更改文件的权限(右键单击它并单击属性),看看它是否标记为只读。

答案 1 :(得分:2)

如果打开文件进行阅读,Visual Studio 2012会表现出相同的行为。

您可以使用SysInternals中的handle实用程序验证这一点。

[16:52:37] C:\windows\system32>
$  handle filepath

Handle v3.51
Copyright (C) 1997-2013 Mark Russinovich
Sysinternals - www.sysinternals.com

iisexpress.exe     pid: 8896   type: File           D04: C:\Projects\filepath.js

以下代码段导致了此问题:

var hash = Convert.ToBase64String(new MD5CryptoServiceProvider().ComputeHash(IO.File.OpenRead(filePath)));

完成修复后正确关闭流:

string hash = null;
using (fileStream == File.OpenRead(filePath)) {
    hash = Convert.ToBase64String(new MD5CryptoServiceProvider().ComputeHash(fileStream));
}

答案 2 :(得分:0)

因为光盘上没有空间,所以面临同样的问题。一旦我清理了一些空间,VS就开始工作了。

答案 3 :(得分:0)

我在尝试保存css文件(SASS .scss文件)时遇到了同样的问题。我试图以管理员身份运行并检查文件以确保它不是只读的,并且还关闭了所有其他相关进程(这是一个正在被gulp监视的SASS文件)。它仍然不允许我正常保存,当我尝试通过另存为对话框保存时,它说它被另一个进程锁定。然后我去重新启动我的VM,Windows 10告诉我有未决的更新。我应用了更新并重新启动,问题就消失了。我的猜测是,在我的情况下,挂起的更新锁定了事情,解释了为什么我不能再保存。