Вопрос об открытых файлах Visual Studio

Можно ли открыть проект в Visual Studio 2008, не открывая все файлы, которые были ранее открыты в прошлый раз, когда я открывал проект. У меня есть привычка держать много файлов открытыми, когда я работаю над ними, поэтому в следующий раз, когда я открою проект, он (очень медленно) загружает в редактор кучу файлов, которые мне, возможно, даже не нужно открывать. Я просмотрел настройки и не могу найти ничего, что могло бы остановить такое поведение.

Ответов (9)

Просто удалите файл .suo. Он содержит список открытых файлов.

В Visual Studio 6.0 (VC++) процедура немного отличается.

Удалите файл .ncb (обычно он находится в том же месте, что и файлы .dsp или .dsw).

Изменить: сначала полностью прочитайте вопрос - игнорируйте мой первый (теперь уже ушедший) ответ. :)

Я изменил раскладку клавиатуры для CTRL-SHIFT-C с вызова представления классов на закрытие всех окон документов - что я использую на несколько порядков чаще - а затем я просто очищаю свое рабочее пространство перед закрытием решения.

Или вы можете закрыть весь открытый документ из меню «Окно» перед закрытием VS.

Я надеялся на что-то более автоматическое. VS будет создавать новый файл .suo каждый раз при сохранении проекта. Поэтому мне приходилось удалять этот файл каждый раз, когда я открываю проект. Я также не хочу помнить о закрытии всех файлов перед закрытием VS.

Другие IDE, которые я использовал, имеют аналогичную функциональность, но также позволяют довольно просто включить / выключить.

Спасибо за вашу помощь.

Я никогда не понимал, как меня это тоже раздражало! Мне не удалось найти настройку, но Options > Environment > Keyboard вы можете привязать ярлык к Window.CloseAllDocuments . ALT+X был свободен для меня, поэтому я просто использовал его. Мне интересно, есть ли какие-то скрытые настройки, чтобы автоматически делать это при выходе из решения (или загрузке).

Небольшое исследование показывает, что это можно сделать с помощью макроса:

  • Создайте новый макрос (или используйте существующий). Вы должны увидеть модуль под названием EnvironmentEventsMacro Explorer. (Подробнее см. Здесь .)
  • Откройте EnvironmentEventsмодуль.
  • Введите этот код:

    Public Sub CloseDocsOnExit() Handles SolutionEvents.BeforeClosing
        DTE.ExecuteCommand("Window.CloseAllDocuments")
    End Sub
    
  • Сохраните и соберите макрос.
  • Откройте в своем решении целую кучу документов, а затем закройте Visual Studio.
  • Ура! Больше никаких открытых документов!
  • (Примечание: несмотря на то, что в нем написано SolutionEvents, он также работает, если вы работаете над проектом, для которого нет решения.)

Попробуйте следующее:

  1. Закройте программу после закрытия всех файлов.
  2. Сделайте копию [любой] .suo
  3. Снова откройте решение, откройте несколько файлов и выйдите.
  4. Скопируйте (не перемещайте) старый файл .suo поверх только что сгенерированного.
  5. Сделайте файл .suo доступным только для чтения.

Если у вас есть репозиторий, вы можете проверить этот файл.

Я предлагаю это, потому что у меня была обратная проблема, когда он не открывал мои старые файлы автоматически, а причиной был файл .suo, который был зарегистрирован в репозитории и (по какой-то причине) не перезаписывался Studio. Файл даже не был защищен от записи.

Для меня работает единственный способ: изменить местоположение проекта и снова открыть там форму решений. :)