2011-03-01 18 views
5

Tengo una solución de Visual Studio 2010 para una aplicación web que contiene todos los proyectos que componen la aplicación web, más el archivo .vdproj que crea el instalador. Todos los archivos están bajo gestión de configuración.¿Cómo puedo evitar que una compilación .vdproj actualice el PackageCode en cada compilación?

Cuando compilo esta solución sin cambios en ningún código fuente, Visual Studio verificará el archivo .vdproj y realizará cambios. Como mínimo, PackageCode se cambiará a un GUID diferente. En otras ocasiones, cambiará el orden de la jerarquía dentro de la sección "DeployProject" del archivo .vdproj además de actualizar el PackageCode.

Esto no ocurre con ninguno de nuestros otros archivos .vdproj. Una cosa que hace que este .vdproj sea único es que además de contener el resultado primario de los otros proyectos en la solución, contiene más de 50 archivos .iso, .kml, .jpg adicionales que no se originan en un proyecto de estudio visual. ¿Podrían estos estar causando que el PackageCode cambie de alguna manera?

Respuesta

1

El código del paquete debe cambiarse cada vez que "suelta" un msi, consulte http://msdn.microsoft.com/en-us/library/Aa370568. Como VS no sabe si distribuirá este msi o no, se juega de forma segura y modifica el código del paquete.

Visual Studio debería ser capaz de manejar esto en combinación con el control de fuente, y tiene suerte de que lo haga por usted (de alguna manera, aparentemente). Visual Studio 2010 SP1 tiene un problema allí, consulte http://connect.microsoft.com/VisualStudio/feedback/details/650587/vs-2010-sp1-changes-packagecode-in-vdproj-on-each-build-but-fails-as-source-controlled

+0

Gracias por su respuesta. Es bueno saber que otros han informado sobre este error a MS. Como solución alternativa, hemos decidido dejar el archivo desprotegido para evitar el problema. – kcrossBAE

+0

Esto parece seguir siendo problemático, ya que IDE sigue compilando y empaquetando toda la solución para cada ciclo. –

1

Este es el primer resultado útil de google al buscar el mensaje de diálogo infinito después de instalar VS2010 SP1 y generar una solución con proyectos de instalación (.vbproj). Esto ha sido arreglado por MS. Estoy publicando un enlace más directo a la descarga de la revisión.

A hotfix for SP1 has been made available.

http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=35848

Leer el enlace de revisión, ya que todavía tiene que modificar las propiedades del proyecto por lo que la acción por defecto de construcción no trata de cambiar el código de producto en cada proyecto de construcción (ver la propiedad del proyecto añadida por la revisión: BackwardCompatibleIDGeneration).

+0

Desafortunadamente, esta revisión no resolvió nuestro problema. Nuestro sistema CM todavía insiste en verificar el archivo, lo que indica que el Código del producto aún se está actualizando. – kcrossBAE

+1

@kcrossBAE ¿estableciste BackwardCompatibleIDGeneration del proyecto de instalación en True? El sistema de compilación continuará usando el nuevo comportamiento hasta que esta propiedad se establezca en vbproj. – yzorg

Cuestiones relacionadas