PowerShell: Microsoft.Powershell.Sdk - Script hangs when running from runtime-specific published binary
Prerequisites
- Write a descriptive title.
- Make sure you are able to repro it on the latest released version
- Search the existing issues.
- Refer to the FAQ.
- Refer to Differences between Windows PowerShell 5.1 and PowerShell.
Steps to reproduce
- Unzip test project to some folder
- Publish binaries
dotnet publish PwshTest.csproj -o .\publish --configuration Release --runtime win10-x64
- Run PwshTest.exe
Expected behavior
Application exits
Actual behavior
Application hangs
Error details
Seems that creating an instance of WScript.Shell
is causing the PS sdk library to hang (looping, since there is cpu usage going on). This is specific to using the --runtime
parameter on publish. Publishing without specifying runtime does not hang, and running from sources in Debug and Release does not hang either. Removing creation of WScript.Shell
from the script file makes it pass without issues.
Tested in SDK 7.1.5, the latest release for Net5 applications.
Environment data
<TargetFramework>net5.0-windows10.0.19041</TargetFramework>
<PackageReference Include="Microsoft.PowerShell.SDK" Version="7.1.5" />
Visuals
Test solution and script: PwshTest.zip
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Comments: 18 (3 by maintainers)
See the explanation here: https://github.com/PowerShell/PowerShell/issues/16525#issuecomment-983108982
As for the hang, it’s because the built-in module folder is not deployed along with your project. It was fixed by https://github.com/PowerShell/PowerShell/pull/16628 to detect that a built-in module is missing.
@genriquez I will try later on the same version and give you a feedback if I found something.