簡體   English   中英

ComboBox的例外

[英]Exception to ComboBox

我正在尋找一種在購買計算機上的設備列表時刪除物理磁盤0的方法。

執行的命令如下:

ManagementObjectSearcher mosDisks = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");
        foreach (ManagementObject moDisk in mosDisks.Get())
        {
            driveList.Items.Add(moDisk["Model"].ToString());
        }

謝謝您的幫助。

ManagementObjectSearcher mosDisks = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");
    foreach (ManagementObject moDisk in mosDisks.Get())
    {
        if(!moDisk["DeviceId"].ToString().Contains("PHYSICALDRIVE0"))
        {
            driveList.Items.Add(moDisk["Model"].ToString());
        }
    }

或更簡單地說,將您的WQL更改為此:

SELECT * FROM Win32_DiskDrive WHERE NOT NAME LIKE '%PHYSICALDRIVE0'

如何可靠地識別物理磁盤驅動器0?

如果注釋掉添加到驅動器列表組合框,而后添加下面的代碼片段,則可以看到ManagementObject的屬性並決定使用哪個:

foreach(var prop in moDisk.Properties)  
{  
  Console.WriteLine("{0}: {1}", prop.Name, prop.Value);  
}  

例如(我沒有足夠的驅動器來確定),您可能想排除索引0,您可以通過在循環中檢查而不添加到組合框或更新選擇來執行以下操作:

select * from Win32_DiskDrive where Index <> 0

您也可以選擇Model而不是*

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM