Pregunta

que significa este mensaje de error? ¿Qué podría hacer para corregir este problema?

EnsambleyInfo.cs salió con el código 9009


El problema probablemente esté sucediendo como parte de un paso posterior a la construcción en una solución .NET en Visual Studio.

No hay solución correcta

Otros consejos

¿Intentaste dar la ruta completa del comando que se ejecuta en el comando de eventos previos o posteriores a la construcción?

Estaba recibiendo el error 9009 debido a un xcopy Comando de eventos posteriores a la construcción en Visual Studio 2008.

El comando "xcopy.exe /Y C:\projectpath\project.config C:\compilepath\" Salido con el código 9009.

Pero en mi caso también fue intermitente. Es decir, el mensaje de error persiste hasta un reinicio de la computadora y desaparece después de un reinicio de la computadora. Regresa después de un problema remotamente relacionado que aún no tengo que descubrir.

Sin embargo, en mi caso, proporcionando al comando su camino completo resolvió el problema:

c:\windows\system32\xcopy.exe /Y C:\projectpath\project.config C:\compilepath\ 

En lugar de solo:

xcopy.exe /Y C:\projectpath\project.config C:\compilepath\

Si no tengo el camino completo, se ejecuta por un tiempo después de un reinicio y luego se detiene.

También como se menciona en los comentarios a esta publicación, Si hay espacios en pleno camino, entonces uno necesita comillas alrededor del comando. P.ej

"C:\The folder with spaces\ABCDEF\xcopy.exe" /Y C:\projectpath\project.config C:\compilepath\

Tenga en cuenta que este ejemplo con respecto a los espacios no se prueba.

Código de error 9009 significa el archivo de error no encontrado. Todas las razones subyacentes publicadas en las respuestas aquí son una buena inspiración para descubrir por qué, pero el error en sí simplemente significa un mal camino.

Ocurre cuando le falta algunas configuraciones de entorno para usar herramientas de Microsoft Visual Studio X86.
Por lo tanto, intente agregar como primer comando en sus pasos posteriores a la construcción:

Para Visual Studio 2010 Uso:

call "$(DevEnvDir)..\Tools\vsvars32.bat"

Como @Floriankoch mencionó en los comentarios, para el uso de VS 2017:

call "$(DevEnvDir)..\Tools\VsDevCmd.bat"

Debe colocarse antes que cualquier otro comando.
Establecerá un entorno para usar herramientas de Microsoft Visual Studio X86.

Lo más probable es que tenga espacio en su camino resultante.

Puede trabajar alrededor de esto citando los caminos, permitiendo así espacios. Por ejemplo:

xcopy "$(SolutionDir)\Folder Name\File To Copy.ext" "$(TargetDir)" /R /Y /I

Tenía la misma variable después de cambiar la variable de ruta de las variables ambientales en Win 7. Cambiar de nuevo al valor predeterminado ayudó.

He tenido el error 9009 cuando mi script de evento posterior a la compilación estaba tratando de ejecutar un archivo por lotes que no existía en la ruta especificada.

Hice que este error ocurriera cuando redacté mi variable de entorno de ruta. Después de editar, agregué accidentalmente Path= Al comienzo de la cadena de ruta. Con una variable de ruta tan formada, no pude ejecutar XCopy en la línea de comando (sin comando o archivo no encontrado), y Visual Studio se negó a ejecutar el paso posterior a la construcción, citando el error con el código 9009.

XCopy comúnmente reside en C: Windows System32. Una vez que la variable de entorno PATH permitió que XCopy se resolviera en DOS Avecute, Visual Studio construyó bien mi solución.

Si el script realmente hace lo que debe hacer y es solo Visual Studio que le molesta sobre el error que podría agregar:

exit 0

al final de tu guión.

Revisar la ortografía. Estaba tratando de llamar a un ejecutable pero tenía el nombre mal escrito y me dio el exited with code 9009 mensaje.

En mi caso, tuve que "CD" (directorio de cambio) al directorio adecuado primero, antes de llamar al comando, ya que el ejecutable que estaba llamando estaba en el directorio de mi proyecto.

Ejemplo:

cd "$(SolutionDir)"
call "$(SolutionDir)build.bat"

Mi error exacto fue

The command "iscc /DConfigurationName=Debug "C:\Projects\Blahblahblah\setup.iss"" exited with code 9009.

9009 significa que el archivo no se encuentra, pero en realidad no pudo encontrar la parte "ISCC" del comando.

Lo arreglé agregando ";C:\Program Files\Inno Setup 5 (x86)\" a la variable de entorno del sistema "path"

Otra variante:

Hoy llamo a Python Interpreter de Cron en Win32 y tomo EXITCODE (%ErrorLevel%) 9009, porque la cuenta del sistema utilizada por Cron no tiene Rath to Python Directory.

El problema en mi caso ocurrió cuando intenté usar un comando en la línea de comandos para el evento posterior a la construcción en mi biblioteca de clase de prueba. Cuando usa comillas como así:

"$(SolutionDir)\packages\NUnit.Runners.2.6.2\tools\nunit" "$(TargetPath)" 

o si estás usando la consola:

"$(SolutionDir)\packages\NUnit.Runners.2.6.2\tools\nunit-console" "$(TargetPath)"

Esto solucionó el problema para mí.

Además, asegúrese de que no haya saltos de línea en la ventana de edición de eventos posteriores a la compilación en su proyecto. A veces, copiar el comando xCopy de la web cuando es múltiple y pegarlo en VS causará un problema.

Agregué "> myFile.txt" al final de la línea en el paso previo a la construcción y luego inspié el archivo para el error real.

La respuesta de TFA ha sido votada, pero en realidad puede causar este problema. Gracias a Hanzolo, miré en la ventana de salida y encontré lo siguiente:

3>'gulp' is not recognized as an internal or external command,
3>operable program or batch file.
3>D:\dev\<filepath>\Web.csproj(4,5): error MSB3073: The command "gulp clean" exited with code 9009.

despues de correr npm install -g gulp, Dejé de recibir este error. Si recibe este error en Visual Studio, verifique la ventana de salida y vea si el problema es una variable de entorno no establecida.

Para mí, el espacio en el disco era bajo, y se esperaba que los archivos que no se podían escribir estuvieran presentes más tarde. Otras respuestas mencionaron archivos faltantes (o archivos incorrectamente referenciados por el nombre), pero la causa raíz era la falta de espacio en disco.

Otra variante de archivo que no se encuentra, debido a los espacios en la ruta. En mi caso en el script msbuild. Necesitaba usar el estilo HTML " cadenas dentro del comando exec.

<!-- Needs quotes example with my Buildscript.msbuild file --> 
<Exec Command="&quot;$(MSBuildThisFileDirectory)\wix\wixscript.bat&quot; $(VersionNumber) $(VersionNumberShort)" 
    ContinueOnError="false" 
    IgnoreExitCode="false" 
    WorkingDirectory="$(MSBuildProjectDirectory)\wix" />

Igual que las otras respuestas, en mi caso se debió al archivo que faltaba. Para saber cuál es el archivo que falta, puede ir a la ventana de salida y le mostrará de inmediato lo que faltaba.

Para abrir la ventana de salida en Visual Studio:

  1. Ctrl+Alt+O
  2. Ver> Salida

enter image description here

Arreglé esto simplemente reiniciando Visual Studio, acababa de correr dotnet tool install xxx En una ventana de consola y VS aún no había recogido las nuevas variables de entorno y/o configuraciones de ruta que se cambiaron, por lo que un reinicio rápido solucionó el problema.

Esto es bastante básico, tuve este problema y un fracaso simple vergonzoso.

Aplicación Use los argumentos de la línea de comandos, los eliminé y luego los agregué. De repente, el proyecto no pudo construir.

Visual Studio -> Propiedades del proyecto -> Verifique que use la pestaña 'Debug' (no la pestaña 'Build Events') -> Argumentos de línea de comandos

Usé el área de texto y Post/Pre-Build, que estaba equivocado en este caso.

Para mí sucedió después de actualizar los paquetes Nuget de una versión postsharp a la siguiente en una gran solución (~ 80 proyecto). Tengo errores de compilador para proyectos que tienen comandos en eventos previos a la construcción.

'CMD' no se reconoce como un comando interno o externo, un programa operable o un archivo por lotes. C: Archivos de programa (x86) msbuild 14.0 bin microsoft.common.currentversion.targets (1249,5): error msb3073: el comando "cmd /c c: gitrepos main serviceInterfaces dev.config PreBuild.CMD ServiceInterfaces "salió con el código 9009.

La variable de ruta se corrompió demasiado larga con múltiples rutas repetidas relacionadas con postsharp.patterns.diagnostics. Cuando cerré Visual Studio y lo abrí nuevamente, el problema se solucionó.

Mi solución fue simple como: ¿Has intentado apagarla y volver a encender? Así que reinicié la computadora y el problema se había ido.

También me encontré con esto 9009 Problema al enfrentar una situación de sobrescritura.

Básicamente, si el archivo ya existe y no ha especificado el /y Switch (que sobrescribe automáticamente) este error puede ocurrir cuando se ejecuta desde una compilación.

En realidad, noté que por alguna razón la variable de entorno % windir % a veces se borra. Lo que funcionó para mí fue volver a establecer la variable de entorno Windir a C: Windows, reiniciar VS, y eso es todo. De esa manera, evita tener que modificar los archivos de solución.

Al menos en Visual Studio Ultimate 2013, versión 12.0.30723.00 Actualización 3, no es posible separar una declaración IF/Else con un descanso de línea:

obras:

if '$(BuildingInsideVisualStudio)' == 'true' (echo local) else (echo server)

no funciona:

if '$(BuildingInsideVisualStudio)' == 'true' (echo local) 
else (echo server)

Otra razón más: si su evento previo a la construcción hace referencia a otra ruta de proyectos y verá este error al ejecutar msBuild, pero no Visual Studio, entonces debe organizar manualmente los proyectos en el archivo *.sln (con un editor de texto). que el proyecto al que se dirige en el evento se construye antes del proyecto del evento. En otras palabras, MSBuild usa el orden de que los proyectos se enumeran en el archivo *.sln, mientras que VS utiliza el conocimiento de las dependencias del proyecto. Hice que esto sucediera cuando una herramienta que crea una base de datos para ser incluida en un wixproj fue enumerada después del wixproj.

Creo que en mi caso había símbolos rusos en la ruta (todos los proyectos estaban en la carpeta de usuario). Cuando pongo la solución en otra carpeta (directamente en el disco), todo se volvió bien.

Mi solución fue crear una copia del archivo y agregar un paso a la tarea de compilación para copiar mi archivo a través del original.

Debe asegurarse de haber instalado Grunt a nivel mundial

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top