Welcome to Microsoft Q&A!
Thank you for providing such a detailed description of the issue, along with the investigation and testing you have already completed. The additional context, particularly your runtime dependency testing, is very helpful and highlights an important practical consideration for anyone hosting PowerShell in-process.
Based on the information currently available in public documentation and community discussions, there is still no published Microsoft clarification that definitively resolves the licensing discrepancy surrounding Microsoft.Management.Infrastructure.Runtime.Win 3.0.0.
A few points can be verified:
- Microsoft.Management.Infrastructure (3.0.0) and Microsoft.Management.Infrastructure.Runtime.Unix (3.0.0) are associated with the PowerShell/MMI project, whose repository contains an MIT license. However, Microsoft.Management.Infrastructure.Runtime.Win (3.0.0) ships with a separate LICENSE.txt containing Microsoft Software License Terms rather than an MIT license declaration.
- This licensing discrepancy was previously raised in GitHub issue #20798 ("Confusing licensing in Microsoft.Management.Infrastructure 3.0.0 nugets"), which remains open and, at the time of writing, does not contain an official maintainer response clarifying whether the Windows runtime package was intentionally licensed differently or whether the package metadata is incorrect.
- A related community discussion regarding the status and intended usage of MMI also references the unusual licensing of the Windows runtime package. To date, there has not been an official response explaining the redistribution rights for the native Windows binaries.
- Your testing aligns with reports from other users that System.Management.Automation has a runtime dependency on MMI components. As your results demonstrate, removing the MMI assemblies can prevent PowerShell hosting from initializing successfully. In practice, this means that a self-contained application embedding Microsoft.PowerShell.SDK cannot simply exclude these runtime files and continue to function as intended.
Because Microsoft has not published an authoritative clarification, neither Microsoft Q&A contributors nor the broader community can conclusively determine:
- Whether the Runtime.Win LICENSE.txt was intentionally packaged as-is.
- Whether the MIT license in the archived MMI repository extends to the Windows runtime binaries included in the NuGet package.
- Whether a separate redistribution grant exists for those specific DLLs.
For that reason, any statement that redistribution is definitively permitted or definitively prohibited would be speculative.
At this time, the most supportable conclusion is that the licensing question remains publicly unresolved. Given the lack of an official statement, the safest approach is to continue pursuing clarification through the PowerShell GitHub issue, the NuGet package owners, or Microsoft's licensing channels before making a commercial redistribution decision.
I understand that this may not provide the certainty needed for a shipping decision, especially since the dependency appears to be required for PowerShell hosting scenarios. However, based on the public information currently available, there does not appear to be a Microsoft document that explicitly clarifies redistribution rights for Microsoft.Management.Infrastructure.Runtime.Win 3.0.0.
I appreciate the additional testing details you've shared, as they help clarify that simply excluding the runtime package is not a viable workaround for embedded PowerShell scenarios.
If you find this information helpful, please click Accept Answer.
Thank you for using Microsoft Q&A.