.net visual-studio-2010 windows-installer devenv hresult

.net - Se produjo un error al validar. HRESULT=''8000000A''



visual-studio-2010 windows-installer (14)

Actualización a partir del 14/06/2017

la extensión de proyectos de instalación de Microsoft Visual Studio 2017 ahora incluye una herramienta de ayuda de línea de comandos para hacer que la configuración del registro sea mucho más fácil de aplicar Proyectos de instalador de Microsoft Visual Studio 2017

Ejemplos de rutas de acceso de la herramienta (basadas en la versión de Visual Studio instalada)

Edición profesional: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/Common7/IDE/CommonExtensions/Microsoft/VSI/DisableOutOfProcBuild/DisableOutOfProcBuild.exe


Edición de comunidad: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/Common7/IDE/CommonExtensions/Microsoft/VSI/DisableOutOfProcBuild/DisableOutOfProcBuild.exe

Del README

Esta sencilla herramienta está destinada a ayudar a los usuarios a establecer la clave de registro necesaria para evitar este error que puede aparecer al crear proyectos de instalador mediante compilaciones de línea de comandos:

ERROR: Se produjo un error al validar. HRESULT = ''8000000A''

La herramienta está diseñada para Visual Studio 2017+ y establece esta clave de registro para una instancia de Visual Studio instalada en particular para el usuario actual. Entonces, si está configurando esto en un agente de compilación, asegúrese de usar la cuenta de usuario que utilizará la compilación.

Ejecute la ayuda "DisableOutOfProcBuild.exe" para detalles de uso.

He estado recibiendo este error por un tiempo cuando uso devenv en una compilación automática. He revisado cada sitio web que puedo encontrar, y las respuestas habituales mencionan dependencias refrescantes (que creo que lo arreglan para el despliegue manual, pero no automático) y eliminar la codificación de control de origen de los proyectos, lo que no me ha ayudado.

El error no ocurre cada vez que compilo, pero parece aleatorio en diferentes proyectos de implementación cada vez.

¿Alguien tiene algún consejo sobre por qué ocurre exactamente este error y cómo solucionarlo?


Solución permanente

Visula Studo 2017

Para VS 2017 llame a los siguientes bajo un usuario objetivo

Ediciones de Community , Professional , Enterprise

Eliminé todo mi .vdproj ahora (un conflicto con los proyectos SSDT) ​​y no puedo verificar los scrips muy bien, pero funcionan.

TL; DR. Notas para los pobres DisableOutOfProcBuild.exe La solución ofrecida por Microsoft que uso para VS 2017.

  1. DisableOutOfProcBuild.exe no supone que lo invocará fuera de su carpeta de instalaciones . Por cierto, si quieres construir .vdproj, debes intalar VS.
  2. DisableOutOfProcBuild.exe no funciona si el directorio CMD actual no se establece en la ubicación de instalación de DisableOutOfProcBuild.exe.

Como ejemplo, para la edición VS Professional debemos llamar

CD "C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/Common7/IDE/CommonExtensions/Microsoft/VSI/DisableOutOfProcBuild" CALL DisableOutOfProcBuild.exe


Visual Studio 2015 y versiones anteriores

1. por CMD para un usuario actual

Para muchas personas, la creación / corrección en HKEY_CURRENT_USER/.. no siempre funciona o funciona de forma permanente.
Al tratar de resolver esto, descubrí que, de hecho, tengo que crear / cambiar alguna clave extraña en HKEY_USERS HKEY_USERS/S-1-5-xx-xxxxxxxxxx-xxxxxxxxx-xxxxxxxxxxx-xxxxx/.../MSBuild

Pero también encontré que si usaré una consola CMD con la solución propuesta
REG ADD HKCU/SOFTWARE/Microsoft/VisualStudio/14.0_Config/MSBuild /t REG_DWORD /v EnableOutOfProcBuild /d 0 /f
esto escribirá el valor exactamente en esa extraña clave HKEY_USERS / S-1-5-xx-xxxxxxxxxx-xx ... , no en HKEY_CURRENT_USER .

Entonces, esto funciona desde un primer disparo. Solo usa la consola CMD.

REG ADD HKCU/SOFTWARE/Microsoft/VisualStudio/14.0_Config/MSBuild /t REG_DWORD /v EnableOutOfProcBuild /d 0 /f @REM (use 12.0_Config for VS2013)

2. Solver para servidores de compilación

Por otro lado, este código siempre funciona para una cuenta de usuario actual que lo inicia (debido a HKEY_CURRENT_USER). Pero los servidores de compilación a menudo usan cuentas dedicadas (sistema local, etc.).

Lo arreglé en mis máquinas de construcción al agregar el siguiente archivo por lotes simple a mis tareas de compilación (Jenkins, TeamCity, CruiseControl)

VS-2015 , VS-2013 , Community , Professional , Enterprise


Actualización para aquellos que tuvieron este problema para VS2013 o VS2015 después de actualizar un proyecto de instalación de VS200X utilizando la extensión de proyectos de instalador de Microsoft Visual Studio.

Seguir la receta de la versión 1.0.0 de MS finalmente me hizo funcionar:

Proyectos de instalador de Microsoft Visual Studio

Desafortunadamente no pudimos abordar todos los casos del problema de la línea de comando para este lanzamiento ya que todavía estamos investigando la forma adecuada de abordarlos. Lo que sí tenemos es una solución que creemos que funcionará para casi todos. Si aún sufre este problema, puede intentar cambiar el valor DWORD para el siguiente valor de registro a 0: HKEY_CURRENT_USER/Software/Microsoft/VisualStudio/12.0_Config/MSBuild/EnableOutOfProcBuild (VS2013)
o
HKEY_CURRENT_USER/Software/Microsoft/VisualStudio/14.0_Config/MSBuild/EnableOutOfProcBuild (VS2015)
Si esto no existe, puede crearlo como DWORD.


Como se señaló en los comentarios here , para VS2017 deberá crear el DWORD HKEY_CURRENT_USER / Software / Microsoft / VisualStudio / 15.0_ [IDKey] _Config / MSBuild / EnableOutOfProcBuild Replace [IDKey] con el sufijo ID de la subclave 15.0 existente de VisualStudio .

Por ejemplo, si en VisualStudio aparece la clave "15.0_abcd1234", sería "15.0_abcd1234_Config".


Este es un problema conocido en Visual Studio 2010 (una condición de carrera). Ver este elemento de conexión .

También nos hemos topado con esto y tuvimos una llamada de soporte muy insatisfactoria sobre este problema con Microsoft. Para resumir: es un problema conocido, no se resolverá, y Microsoft aconseja alejarse de los proyectos de instalación de Visual Studio (.vdproj).

Hemos solucionado este problema al activar la compilación de MSI por segunda vez cuando falla por primera vez. No es agradable, pero funciona la mayor parte del tiempo (la tasa de error baja de ~ 10% a ~ 1%).



Leí en algún sitio en línea sobre esto, y lo he arreglado así (fue sugerido por alguien) :

  • abra su archivo de proyecto de instalación (.vdproj) en el bloc de notas (o cualquier otro editor de texto)
  • borre estas líneas al comienzo del archivo .vdproj:

    "SccProjectName" = "8:" "SccLocalPath" = "8:" "SccAuxPath" = "8:" "SccProvider" = "8:"

  • construir de nuevo - el error se fue

Ese error no me impidió implementar, construir, depurar (o modificar) mi proyecto, solo me molestó. Y llegó incluso si configuré todos los proyectos para que se construyeran en una configuración actual y el proyecto de configuración no lo hiciera.


Me he enfrentado con este problema después de mover mi proyecto a otra PC (VS 2010, múltiples proyectos en una solución).

Ya se construyó mi proyecto en la computadora de origen, pero después de copiar al destino, no pude construir mi Proyecto de configuración y tener este error.

Abrí la carpeta /Debug debajo de la ruta de acceso de mi proyecto de instalación, había archivos MyProject.msi y setup.exe , los borré y volví a construir mi proyecto, funcionó. Espero que también funcione para algunos muchachos.


Mi Visual Studio 2013 de alguna manera se convirtió en Experimental por lo que comenzó a usar otra clave de registro para EnableOutOfProcBuild

Para estar seguro de que acabo de agregar otra línea en mi archivo por lotes para establecer el valor del registro y comenzó a funcionar:

REG ADD HKCU/SOFTWARE/Microsoft/VisualStudio/12.0_Config/MSBuild /t REG_DWORD /v EnableOutOfProcBuild /d 0 /f REG ADD HKCU/SOFTWARE/Microsoft/VisualStudio/12.0Exp_Config/MSBuild /t REG_DWORD /v EnableOutOfProcBuild /d 0 /f


Primero, limpie la solución, genere la solución y luego intente construir el instalador. Eliminará el error.


Si tuviera este problema hoy, intente reiniciar Visual Studio, si eso no lo hace, cree un nuevo proyecto, guárdelo y luego copie los archivos del proyecto problemático. ambos métodos funcionaron para mí.


Verificar las dependencias del proyecto puede ayudar.

En VS 2010, haga clic derecho en su explorador de soluciones y luego haga clic en Dependencias detectadas y Dependencias de actualización, en algún momento resuelve el problema.


Visual Studio 2017 almacena la información previamente almacenada en el registro público dentro de un nuevo registro privado: C: / Users // AppData / Local / Microsoft / VisualStudio / 15.0_6de65198 / privateregistry.bin

Aquí es donde debe agregar EnableOutOfProcBuild según las instrucciones para VS2013 / VS2015.

Para actualizar el registro privado, puede usar Regedit.

Haga clic para seleccionar el nodo HKEY_USERS.

Seleccione Archivo> Cargar colmena y navegue hasta el archivo privateregistry.bin. Cuando lo seleccione, Regedit le pedirá un nombre; no importa cómo lo llame, ya que pronto lo haremos.

Ahora aparecerá la estructura de registro y puede navegar hasta Microsoft / VisualStudio / 15.0_Config / MSBuild

Cree un nuevo DWORD EnableOutOfProcBuild con un valor de 0.

Una vez hecho esto, seleccione la raíz de la colmena (cualquiera que sea su nombre anterior) y use Archivo> Descargar colmena para desprenderse de ella.

Ahora debería funcionar: o)


conmigo fue causado por un archivo .suo incorrecto. (causado por skydrive) borrar este archivo resolvió el problema.