2009-11-11 5 views
9

He intentado encontrar un atajo de teclado para compilar solo el proyecto de inicio en VS2008.Método abreviado del teclado para construir solo el proyecto de inicio?

Solo encontré un atajo configurable para construir el proyecto que se ve actualmente, que no es tan bueno.

¿Alguna idea?

Gracias.

+0

tienes razón, Herramientas/Opciones/Medio Ambiente/teclado no tiene un 'Build.StartupProject'. ': (' – sbi

+0

Una pregunta seria, ¿por qué solo querría construir el proyecto de inicio? – Lazarus

+1

Dado que muchas veces el proyecto de inicio es el que estoy interesado en construir, incluso si actualmente estoy editando un proyecto diferente (en el cual el proyecto de inicio depende). – Danra

Respuesta

11

Eso macro debería hacerlo:

Sub Build_Startup() 
    DTE.ToolWindows.OutputWindow.Parent.Activate() 
    Dim sb As SolutionBuild2 = DTE.Solution.SolutionBuild 
    For Each item In sb.StartupProjects 
     sb.BuildProject(sb.ActiveConfiguration.Name, item, True) 
    Next 
End Sub 

Sólo hay que poner que en sus macros - utilizando el IDE de macros Alt + F11, y añadir un mapa de teclado a ella (Herramientas/Personalizar/Comandos/Teclado, encuentre su nuevo comando en el espacio de nombres Macros.), y ya está todo listo.

+0

¡Genial, funciona! Pero ... No muestra cualquier cosa en la consola de salida ... ¿Alguna manera de cambiar eso? – Danra

+0

Muestra el resultado de compilación estándar en el panel de salida de compilación para mí. ¿Qué tipo de resultados está buscando? Puede agregar su propio resultado en la macro con la ayuda de las funciones GetWindowOutputPane y OutputItem que están disponibles en las muestras de macros (Samples/Utilities). – Bahbar

+0

Mi error, la salida se muestra de hecho prope rly. ¡Gracias! – Danra

1

Puede crear una configuración de solución personalizada que solo genere el proyecto que desea (llamado, por ejemplo, "StartupOnly"). De forma predeterminada, Visual Studio muestra un combo en la barra de herramientas que permite cambiar rápidamente entre diferentes configuraciones, por lo que todo lo que necesita es seleccionar esa configuración y usar el comando de compilación normal.

+0

Estoy buscando un atajo de teclado genérico que no requiera que defina una configuración para cada proyecto que quiero construir. – Danra

0

Lo sentimos, no tengo puntos suficientes para responder directamente a progician anterior, pero en VS2010, si se agrega lo siguiente como la primera línea de la macro de Bahbar, la ventana de salida se mostrará durante la construcción

DTE.ToolWindows.OutputWindow.Parent.Activate() 

actualización: Además, es necesario utilizar el siguiente para el nombre de la configuración:

Dim configName = String.Format("{0}|{1}", sb.ActiveConfiguration.Name, sb.ActiveConfiguration.PlatformName) 
Cuestiones relacionadas