2010-10-08 13 views
11

En versiones anteriores de MSBuild, puede establecer una variable de entorno llamada MSBUILDEMITSOLUTION en 1 para obtener una versión XML de un archivo de solución (.sln) que pueda analizarse. De acuerdo con MSBuild Team Blog, aún está en la versión que se incluye con Visual Studio 2010, pero parece que no funciona.MSBUILDEMITSOLUTION no funciona con .NET 4?

¿Alguien ha conseguido que esto funcione con MSBuild 4.0? Si es así, ¿qué se requiere?

(Usamos esto para encontrar y basados ​​en los convenios de ejecución pruebas unitarias con una secuencia de comandos de NAnt.)

Respuesta

16

Conjunto MSBuildEmitSolution = 1 y luego construir desde la línea de comandos. Debería ver un archivo MySolution.sln.metaproj cerca de MySolution.sln.

Notas:

  • Si se abre una ventana de comandos a continuación, establecer el env var a través de Configuración sysetm entonces usted tendrá que abrir una nueva línea de comandos.
  • Pensarías que también puedes usar msbuild /p:MSBuildEmitSolution=1, pero no puedes.
+0

Gracias - ahora está funcionando. Ojalá supiera por qué no fue anoche. ;) – TrueWill

+0

¿Cómo funciona esto para devenv.exe? – Schneider