【发布时间】:2019-07-14 16:43:20
【问题描述】:
我需要在我的应用中构建一个调用来检查 SSD 健康状态。
我尝试了来自不同来源的多个示例,但无法使任何工作。在我尝试过的所有示例中,我在 ManagementObjectSearcherquery 或 foreach (ManagementObject data in searcher.Get()) 循环中得到“不支持”异常
我发现的所有示例都已经过时了,所以有什么改变吗?我正在运行带有 .NET 4.6.2 的 Windows 10。你会认为会有一个“现代”的调用来访问 SMART 数据。任何帮助将不胜感激!谢谢!
【问题讨论】:
-
能否提供代码示例?像应该这样做的单一方法吗?
-
你可以看看这个答案。 stackoverflow.com/a/14894138/2793683
-
这是一个立即崩溃的例子vasters.com/archive/…
-
@ dmoore1181 是的,我试过了,但它在这个循环中崩溃并显示“不支持”:
// check if SMART reports the drive is failing ... foreach (ManagementObject drive in searcher.Get()) { dicDrives[iDriveIndex].IsOK = (bool)drive.Properties["PredictFailure"].Value == false; iDriveIndex++; } -
顺便说一句,dmoore1181 提供的示例据说设计类似于 Crystal Disk 工具,但这个工具在我的电脑上运行完美。
标签: c# solid-state-drive