Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在哪些版本的Windows中实现了存储管理API类,如“MSFT\u PhysicalDisk”?_C#_Windows_Wmi - Fatal编程技术网

C# 在哪些版本的Windows中实现了存储管理API类,如“MSFT\u PhysicalDisk”?

C# 在哪些版本的Windows中实现了存储管理API类,如“MSFT\u PhysicalDisk”?,c#,windows,wmi,C#,Windows,Wmi,我正在尝试从MSFT_PhysicalDisk中提取诸如“MediaType”之类的指标。我在Windows 10计算机上成功,但在Windows 7计算机上没有成功 MSFT_PhysicalDisk在哪种类型的机器上可用 存储管理API类的参考: 请参阅下面的代码,以了解我正在尝试执行的操作的示例: bool isSsd; try { var physDiskQuery = $"SELECT MediaType FROM MSFT_PhysicalDisk WHER

我正在尝试从MSFT_PhysicalDisk中提取诸如“MediaType”之类的指标。我在Windows 10计算机上成功,但在Windows 7计算机上没有成功

MSFT_PhysicalDisk在哪种类型的机器上可用

存储管理API类的参考:

请参阅下面的代码,以了解我正在尝试执行的操作的示例:

bool isSsd;
try
{
    var physDiskQuery =
        $"SELECT MediaType FROM MSFT_PhysicalDisk WHERE DeviceID='{driveNumber.Value}'";

    var wmiScope = @"\\.\root\microsoft\windows\storage";
    using (var physicalDiskSearcher = new ManagementObjectSearcher(wmiScope, physDiskQuery))
    {
        var objectCollection = physicalDiskSearcher.Get();
        var physicalDisk = objectCollection.Cast<ManagementBaseObject>().SingleOrDefault();
        if (physicalDisk == null)
            return null;

        isSsd = (ushort)physicalDisk["MediaType"] == 4;
    }
}
catch (Exception exception)
{
    Debug.WriteLine($"Error while checking for SSD drive. Details: {exception.GetBaseException()}");
    return null;
}

return isSsd;

MSDN文档在页面底部列出了需求。因为它说

支持的最低客户端:Windows 8[仅限桌面应用程序]

支持的最低服务器:Windows server 2012[仅限桌面应用程序]


换句话说,您至少需要。MSDN文档在页面底部列出了需求。因为它说

支持的最低客户端:Windows 8[仅限桌面应用程序]

支持的最低服务器:Windows server 2012[仅限桌面应用程序]


换句话说,您至少需要。

在“可访问”页面的最底部,您在“要求”部分提供的链接中指出了“支持的最低客户端:Windows 8.MS”页面通常列出了所需的最低版本,除了XP支持已经从许多页面中删除,所以XP兼容功能现在被列为需要Vista。谢谢@BACON。你或许应该加上这个作为答案。我想我没有足够的耐心滚动到页面底部!标记为从-1备份到0,因为我发现这篇文章非常有用,可以从您在“要求”部分提供的链接中访问,它说“支持的最低客户端:Windows 8.MS页面通常列出所需的最低版本,除了XP支持已经从许多页面中删除,所以XP兼容功能现在被列为需要Vista。谢谢@BACON。你或许应该加上这个作为答案。我想我没有足够的耐心滚动到页面底部!已从-1标记备份到0,因为我发现此帖子有用有人在Windows 7上找到MSFT_PhysicalDisk的替代品吗?有人在Windows 7上找到MSFT_PhysicalDisk的替代品吗?