我有下面的代码,它使用 WMI 获取本地磁盘信息(从我正在学习的另一个站点获取)。无论如何,我创建了所有标签和组合框,并且组合工作正常 - 它显示计算机上的本地磁盘。
但是,当我尝试从 WMI 中为磁盘取回任何内容并显示它时,标签旁边什么也没有显示。WMI 工作正常,因为我可以使用 powershell 来显示 get-wmiobjects,而我带回来的两个对象实际上通过 powershell 显示了一些东西......只是不在这个应用程序上。
有任何想法吗?
namespace diskdrive_info
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//Get all the disk drives
ManagementObjectSearcher mosDisk = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");
// Loop through each object (disk) retrieved by WMI
foreach (ManagementObject moDisk in mosDisk.Get())
{
cmbHdd.Items.Add(moDisk["Model"].ToString());
}
}
private void cmbHdd_SelectedIndexChanged(object sender,EventArgs e)
{
ManagementObjectSearcher mosDisks = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive WHERE Model = '" + cmbHdd.SelectedItem + "'");
foreach (ManagementObject moDisk in mosDisks.Get())
{
lblType.Text = "Type:" + moDisk["MediaType"].ToString();
lblModel.Text = "Model: " + moDisk["Model"].ToString();
}
}
}
}