31

Es posible abrir un proyecto en Visual Studio 2008 sin abrir todos los archivos que se abrieron la última vez que abrí el proyecto. Tengo la costumbre de mantener muchos archivos abiertos mientras los estoy trabajando, así que la próxima vez que abra el proyecto, (muy lentamente) carga un montón de archivos en el editor que ni siquiera necesito abrir. He buscado a través de la configuración y no puedo encontrar nada para detener este comportamiento.Archivos abiertos de Visual Studio pregunta

Respuesta

27

Simplemente elimine el archivo .suo. Contiene la lista de archivos abiertos.

+1

Parece que en 2017 el suo no es el que está junto a su archivo de solución, sino más bien en una carpeta .vs especial en la raíz. borrar esta nueva me la arreglaron, ¡gracias! – SelAromDotNet

3

Editar: Totalmente leí la pregunta al principio - ignora mi primera respuesta (ahora desaparecida). :)

Cambié el mapeo del teclado para CTRL-SHIFT-C de abrir la vista de clase para cerrar todas las ventanas de documentos, algo que utilizo varios órdenes de magnitud más a menudo, y luego borré mi espacio de trabajo antes de cerrar una solución .

0

O puede cerrar todos los documentos abiertos desde el menú Ventana antes de cerrar VS.

2

Esperaba algo un poco más automático. VS creará un nuevo archivo .suo cada vez que se guarde el proyecto. Así que tendría que eliminar ese archivo cada vez que abro el proyecto. Tampoco quiero tener que recordar cerrar todos los archivos antes de cerrar VS.

Otros IDEs que he usado tienen una funcionalidad similar, pero también hacen que sea bastante fácil de activar/desactivar.

Gracias por su ayuda.

5

¡Nunca me di cuenta de cuánto me molestaba eso también! No he podido encontrar una configuración, pero en Options > Environment > Keyboard puede enlazar un atajo al Window.CloseAllDocuments. ALT+X fue desatado por mí, así que acabo de usar eso. Me interesa si hay alguna configuración oculta para hacer automáticamente esto en la salida de solución (o carga).

26

Un poco de investigación sube el hecho de que puede hacerlo con una macro:

  • Crear una nueva macro (o usar una existente). Debería ver un módulo llamado EnvironmentEvents en Macro Explorer. (Para obtener más información, consulte here.)
  • Abra el módulo EnvironmentEvents.
  • puesto en este código:

    Public Sub CloseDocsOnExit() Handles SolutionEvents.BeforeClosing 
        DTE.ExecuteCommand("Window.CloseAllDocuments") 
    End Sub 
    
  • Guardar y construir la macro.
  • Abra un montón de documentos en su solución, luego cierre Visual Studio.
  • ¡Yay! ¡No más documentos abiertos!
  • (Nota: A pesar de que dice SolutionEvents, también funciona si está trabajando en un proyecto que no tiene una solución.)
+0

Excelente consejo! – eidylon

+0

Esto funcionó para mí también, ¡gracias! Sin embargo, el comando en Visual Studio 2005 es: DTE.Documents.CloseAll (vsSaveChanges.vsSaveChangesPrompt) – John

+0

+1 Gracias por esto. –

3

intente lo siguiente:

  1. Cierre la programa después de cerrar todos los archivos.
  2. Haga una copia de [lo que sea] .suo
  3. Abra de nuevo la solución, abra algunos archivos y salga.
  4. Copie (no mueva) el antiguo archivo .suo sobre el que acaba de generar.
  5. Haga que el archivo .suo sea de solo lectura.

Si usted tiene un repositorio es posible que desee comprobar que el archivo en.

Sugiero esto porque yo estaba teniendo el problema inverso, en el que no se estaba abriendo mis viejos archivos de forma automática, y la causa estaba un archivo .suo que se había registrado en el repositorio y (por alguna razón) Studio no lo sobrescribió. El archivo ni siquiera estaba protegido contra escritura.

-1

La única forma que funciona para mí es la siguiente: cambiar la ubicación del proyecto y volver a abrir allí las soluciones. :)

0

En Visual Studio 6.0 (VC++), el procedimiento es ligeramente diferente.

Elimine el archivo .ncb (ubicado normalmente en el mismo lugar que sus archivos .dsp o .dsw).

Cuestiones relacionadas