14

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

文件名没有变,而且文件路径是对的,所以没有损坏。

如何解决这个问题,让我按预期保存?

4

4 回答 4

14

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

于 2013-07-26T21:38:46.873 回答
2

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

您可以使用SysInternals的句柄实用程序来验证这一点。

[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));
}
于 2013-11-28T16:05:37.697 回答
0

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

于 2014-09-08T22:03:54.273 回答
0

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

于 2017-09-13T16:42:52.850 回答