View Single Post
Old 04-28-2008   #1 (permalink)
javacavaj


 
 

Stdout Redirection Causes the Exception "The OS handle's position

My PowerShell script is failing with this error: Write-Host : The OS handle's
position is not what FileStream expected. Do not use a handle simultaneously
in one FileStream and in Win32 code or another FileStream.

You will see this problem if the following conditions are all true:

1) The console output of a PowerShell script is redirected.
2) The PowerShell script outputs information to the console (write-host).
3) The PowerShell script creates another process that also contains console
output statements (for example, runs a .vbs script that outputs to the
console using wscript.echo).

C:\TempFolder>powershell ./test.ps1 > output.txt

After further testing it appears this issue only surfaces when the
PowerShell script is spawned from a Command Shell (see Cmd_Example.gif). The
issue does not surface when the script is spawned within PowerShell.

Is anyone aware of a workaround for this issue?

Thanks in advance.


My System SpecsSystem Spec