diff --git a/src/libraries/Microsoft.Windows.Compatibility/src/Microsoft.Windows.Compatibility.csproj b/src/libraries/Microsoft.Windows.Compatibility/src/Microsoft.Windows.Compatibility.csproj
index 14e1200eb5642..2869bc4824412 100644
--- a/src/libraries/Microsoft.Windows.Compatibility/src/Microsoft.Windows.Compatibility.csproj
+++ b/src/libraries/Microsoft.Windows.Compatibility/src/Microsoft.Windows.Compatibility.csproj
@@ -5,8 +5,8 @@
false
true
- false
- 3
+ true
+ 4
$(NoWarn);NU5128
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET Core as well as .NET Standard.
diff --git a/src/libraries/System.Management/src/System.Management.csproj b/src/libraries/System.Management/src/System.Management.csproj
index 996ed58021e59..aaf1fd7e9e4cd 100644
--- a/src/libraries/System.Management/src/System.Management.csproj
+++ b/src/libraries/System.Management/src/System.Management.csproj
@@ -6,8 +6,8 @@
$(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent);netcoreapp3.1-windows;netcoreapp3.1;netstandard2.0
true
- false
- 0
+ true
+ 1
true
true
Provides access to a rich set of management information and management events about the system, devices, and applications instrumented to the Windows Management Instrumentation (WMI) infrastructure.
@@ -80,6 +80,7 @@ System.Management.SelectQuery
+
diff --git a/src/libraries/System.Management/src/System/Management/ManagementScope.cs b/src/libraries/System.Management/src/System/Management/ManagementScope.cs
index a1b10722738e2..9bfa3a0992b43 100644
--- a/src/libraries/System.Management/src/System/Management/ManagementScope.cs
+++ b/src/libraries/System.Management/src/System/Management/ManagementScope.cs
@@ -293,7 +293,9 @@ internal enum APTTYPE
static WmiNetUtilsHelper()
{
RegistryKey netFrameworkSubKey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\.NETFramework\");
- string netFrameworkInstallRoot = (string)netFrameworkSubKey?.GetValue("InstallRoot");
+ string netFrameworkInstallRoot = (string)netFrameworkSubKey?.GetValue(RuntimeInformation.ProcessArchitecture == Architecture.Arm64 ?
+ "InstallRootArm64" :
+ "InstallRoot");
if (netFrameworkInstallRoot == null)
{
diff --git a/src/libraries/System.Management/tests/WmiTestHelper.cs b/src/libraries/System.Management/tests/WmiTestHelper.cs
index 0496626b5b186..75460d826d125 100644
--- a/src/libraries/System.Management/tests/WmiTestHelper.cs
+++ b/src/libraries/System.Management/tests/WmiTestHelper.cs
@@ -11,7 +11,7 @@ public static class WmiTestHelper
private static readonly bool s_isElevated = AdminHelpers.IsProcessElevated();
private static readonly bool s_isWmiSupported =
PlatformDetection.IsWindows &&
- PlatformDetection.IsNotArmNorArm64Process &&
+ PlatformDetection.IsNotArmProcess &&
PlatformDetection.IsNotWindowsNanoServer &&
PlatformDetection.IsNotWindowsIoTCore &&
!PlatformDetection.IsInAppContainer;