En realidad, la aplicación funcionó bien: Powershell se equivoca al informar un error.
Cuando una aplicación se imprime como error estándar, Powershell algunas veces concluirá que la aplicación ha fallado. Esta es en realidad una decisión de diseño hecha por desarrolladores de Powershell. Pero esto es un error, porque muchas aplicaciones confiables (como curl) imprimen información útil a errores estándar durante el funcionamiento normal. La consecuencia es que Powershell solo funciona bien con otros scripts de Powershell, y no se puede confiar en que interopere con otras aplicaciones.
Otros lectores en este hilo tuvieron dificultades para reproducir el comportamiento porque Powershell lo implementa de manera incoherente. Si NativeCommandError se produce depende de cómo se redirige el error estándar (como consecuencia, el error se produce en Powershell ISE de vanilla pero no en Powershell de vanilla). Cualquiera que sea su opinión sobre la decisión de diseño en el primer párrafo, la implementación incoherente es para ciertos errores de Powershell $LastExitCode=0 but $?=False in PowerShell. Redirecting stderr to stdout gives NativeCommandError
¿Está seguro de que es un EXE externo que devuelve un código de error que está causando un error en PowerShell? Eso normalmente no provoca un error en PowerShell. De hecho, tiene que esforzarse para convertir un $ LASTEXITCODE que representa un error a un error de PowerShell. –
¿Podría al menos publicar un código? Por lo general, la falla no es el comportamiento predeterminado en ese caso. – Joey
estoy corriendo curl.exe y conseguir esto: + CategoryInfo: NotSpecified: (% Total% ... El tiempo actual: String) [], RemoteException + FullyQualifiedErrorId: NativeCommandError – ripper234