Compartir a través de


código de diagnóstico de MSB4018

En este artículo se describe el código de error MSB4018.

Texto del mensaje

MSB4018: The 'value' task failed unexpectedly.

Descripción

Este error se genera cuando se produce un error en una tarea con una excepción no controlada. Este problema suele ser un signo de un error en la tarea.

Es posible que encuentre este error cuando la compilación ejecuta una tarea en un entorno para el que no se preparó. Por ejemplo, cuando una tarea tiene una dependencia x86, pero la tarea se ejecuta en un entorno de MSBuild de 64 bits. Este escenario puede manifestarse como una System.DllNotFoundException excepción, como se muestra en la salida siguiente:

S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018: The "AnyCPUTaskWithPInvoke" task failed unexpectedly.
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018: System.DllNotFoundException: Unable to load DLL 'Native32BitLibrary.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018:    at AnyCPUTaskWithPInvoke.AnyCPUTaskWithPInvoke.NativeMethod()
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018:    at AnyCPUTaskWithPInvoke.AnyCPUTaskWithPInvoke.OtherMethod() in S:\BitnessInMSBuild\AnyCPUTaskWithPInvoke\AnyCPUTaskWithPInvoke.cs:line 19
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018:    at AnyCPUTaskWithPInvoke.AnyCPUTaskWithPInvoke.Execute() in S:\BitnessInMSBuild\AnyCPUTaskWithPInvoke\AnyCPUTaskWithPInvoke.cs:line 12
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()

Resolución

Asegúrese de que la tarea expresa una dependencia del entorno de ejecución requerido dentro del elemento UsingTask de la tarea.

Se aplica a

Todas las versiones de MSBuild