ArrayList arr = new ArrayList(); string strQuery = "SELECT * From Win32_LogicalDisk";
ManagementObjectSearcher query = new ManagementObjectSearcher(strQuery);
ManagementObjectCollection queryCollection = query.Get();
foreach (ManagementObject mo in queryCollection)
{
if (mo["DriveType"].ToString() == "2")
{
arr.Add(mo["Name"].ToString());
string aaa = mo["SerialNumber"].ToString();
MessageBox.Show(aaa);
//MessageBox.Show(mo["Name"].ToString());
mo.
}
}我用上面的方法只可以获得可移动硬盘的名字("Name"),获得不了序列好("SerialNumber"). 请高手们指教指教指教!!!
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");
String strHardDiskID = null;
foreach (ManagementObject mo in searcher.Get())
{
strHardDiskID = mo["SerialNumber"].ToString().Trim();
break;
}
MessageBox.Show(strHardDiskID);
}
catch
{
}
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Management;
using System.Net;
using System.Web;
using System.IO;
using System.Xml; namespace MyDriver
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void btnRead_Click(object sender, EventArgs e)
{
ManagementObject disk = null;
string driver = "win32_logicaldisk.deviceid=\""+this.txtDriver.Text+":\"";
try
{
disk = new ManagementObject(driver);
this.txtDriverCode.Text = disk.GetPropertyValue("VolumeSerialNumber").ToString();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}