2015-01-21 140 views
6

我有一个大型项目需要加载和处理。我无能为力 - 只需加载解决方案和其中的所有项目即可。关闭Visual Studio弹出框

问题是,前几分钟VS一个接一个地加载项目,并不断地通过显示一些“加载项目是必需的...”窗口告诉我它。当然,我知道这是必需的,但不能在背景中以某种方式完成吗?如果我可以打开一些文本编辑器并调整配置或阅读文档,而没有弹出窗口重点,我会满意。

它发生在所有项目重建(我们使用GYP) - 因为VS解决方案和项目生成每次我必须在新的C++定义/标志/依赖关系设置工作我必须坐着看VS VS垃圾邮件这些小窗口。

它还有另一个缺点 - 如果在项目更新后立即尝试构建它VS将“阻止” - 它会抱怨它在构建运行时无法关闭项目,我不得不终止构建以便“关闭”该项目。我知道它真正做的是关闭并重新打开它以更新设置......但弹出窗口锁定整个IDE肯定会让它更烦人。

我知道我可以禁止自动重新加载源文件,当它被外部编辑时。崇高的文本。是否有一些解决方案可以让我为项目做同样的事情?一些设置,插件或注册条目会阻止这些窗口发送垃圾邮件,或者在适合我时重新加载项目?当我每次重新生成和构建项目时都必须切换到ST,因为Visual Studio将保持锁定状态直到构建完成,这真的很烦人。

+0

你说的是一代 - 你在用CMake吗? – Angew 2015-01-21 11:29:08

+0

不幸的是它是GYP。我希望它是CMake,因为CMake得到了JetBrains的CLion的支持。 GYP同时生成忍者和VS解决方案。出于某种原因,最近从命令行运行忍者停止为我工作,我只能从VS构建它,因此阻止的IDE问题比以前变得更加令人不安。 – 2015-01-21 12:09:24

+0

尽管如此,你还是应该编辑这个问题,在。[tag:gyp]中添加该信息,甚至可以添加标签。 – Angew 2015-01-21 12:13:24

回答

5

我有一个与CMake生成的Visual Studio解决方案类似的问题。虽然我没有解决方案,但我找到了一种解决方法,对我来说工作得很好 - 在重新运行生成器之前关闭解决方案,并在重新运行完成后再次打开它。在正常keymappings,这是Alt键 + ˚F牛逼关闭,并Alt键 + ˚FĴ 再次打开。

+0

我被建议做到这一点,我会作为最后的解决办法做到这一点。那种方法的问题是那些弹出窗口会再次出现,当我重建项目时不正确,但是当我尝试加载回解决方案时。 – 2015-01-21 12:20:57

+0

@maddening那么也许我误解了一些东西。他们不会出现在我身上。它只是正常加载解决方案。也许GYP在那里产生一些奇怪的依赖关系? – Angew 2015-01-21 12:22:17

+0

我想有从一个项目到另一个项目的依赖关系。我从来没有设法打开过一个项目 - 当我尝试时,它自动打开所有600多个项目的解决方案。然后它开始一个接一个地加载它们。 – 2015-01-21 12:28:55

2

VS系统记录与.SUO文件中每个项目关联的最后解决方案。如果删除.SUO文件,则可以单独打开项目文件,然后保存仅包含要打开的项目的解决方案。

3

禁用智能感知,Visual Studio通常需要花费大量的时间在项目加载解析标题和建立其智能感知数据库。禁用它并查看您的加载时间是否有所改善。

可能不适用如果你不能改变你的解决方案,但我会尝试将不太重要的模块/项目移动到DLL或预建库。这些候选人是第三方/外部库,您不打算更改或可能真正稳定的代码库部分。

祝你好运。