31

是否可以在 Visual Studio 2008 中打开项目而不打开上次我打开项目时打开的所有文件。我习惯于在处理它们时保持许多文件打开,所以下次我打开项目时,它(非常缓慢地)将一堆文件加载到我什至可能不需要打开的编辑器中。我已经搜索了设置,找不到任何东西来阻止这种行为。

4

9 回答 9

27

只需删除 .suo 文件。它包含打开文件的列表。

于 2008-08-19T12:36:13.470 回答
26

一些研究发现你可以用宏来做到这一点:

  • 创建一个新宏(或使用现有宏)。您应该会看到一个EnvironmentEvents在宏资源管理器中调用的模块。(有关详细信息,请参阅此处。)
  • 打开EnvironmentEvents模块。
  • 输入这段代码:

    Public Sub CloseDocsOnExit() Handles SolutionEvents.BeforeClosing
        DTE.ExecuteCommand("Window.CloseAllDocuments")
    End Sub
    
  • 保存并构建宏。
  • 在您的解决方案中打开一大堆文档,然后关闭 Visual Studio。
  • 耶!没有更多打开的文件!
  • (注意:尽管它说的是 SolutionEvents,但如果您正在处理一个没有解决方案的项目,它也可以工作。)
于 2008-09-11T22:53:15.957 回答
5

I never realized how much that annoyed me as well! I haven't been able to find a setting, but in Options > Environment > Keyboard you can bind a shortcut to Window.CloseAllDocuments. ALT+X was unbound for me so I just used that. I'm interested if there's some hidden setting to automatically do this on solution exit though (or load).

于 2008-08-19T14:19:57.177 回答
3

编辑:起初完全错误地阅读了这个问题 - 忽略我的第一个(现在已经消失)答案。:)

我将 CTRL-SHIFT-C 的键盘映射从打开类视图更改为关闭所有文档窗口——我经常使用几个数量级的东西——然后我只是在关闭解决方案之前清除我的工作区。

于 2008-08-19T12:38:03.713 回答
3

尝试以下操作:

  1. 关闭所有文件后关闭程序。
  2. 复制 [whatever].suo
  3. 再次打开解决方案,打开一些文件,然后退出。
  4. 将旧的 .suo 文件复制(不要移动)到刚刚生成的文件上。
  5. 将 .suo 文件设为只读。

如果您有一个存储库,您可能想要签入该文件。

我建议这样做是因为我遇到了相反的问题,它没有自动打开我的旧文件,原因是 .suo 文件已被检入存储库并且(由于某种原因)没有被 Studio 覆盖。该文件甚至没有写保护。

于 2009-08-13T20:08:29.257 回答
2

我希望有一些更自动的东西。每次保存项目时,VS 都会创建一个新的 .suo 文件。所以我每次打开项目时都必须删除该文件。我也不想记住在关闭 VS 之前关闭所有文件。

我使用过的其他 IDE 具有类似的功能,但也使打开/关闭变得相当简单。

谢谢你的帮助。

于 2008-08-19T13:48:05.273 回答
0

或者您可以在关闭 VS 之前从窗口菜单中关闭所有打开的文档。

于 2008-08-19T12:39:36.253 回答
0

在 Visual Studio 6.0 (VC++) 中,该过程略有不同。

删除 .ncb 文件(通常与 .dsp 或 .dsw 文件位于同一位置)。

于 2011-11-11T16:53:18.110 回答
-1

对我有用的唯一方法是:更改项目位置并再次在那里重新打开解决方案表单。:)

于 2010-04-23T08:27:29.497 回答