我正在开发一个小工具,我想更改连接到计算机的闪存驱动器上的卷标。我知道DriveInfo能够做到这一点,但我不知道如何实现它。如果有人有代码示例,我会非常感激 这是我目前拥有的:
DriveInfo[] allDrives = DriveInfo.GetDrives();
foreach (DriveInfo d in allDrives)
{
if (d.IsReady && d.DriveType == DriveType.Removable)
{
//set volume label here
}
}
答案 0 :(得分:4)
谢谢詹姆斯!我不知道为什么我有这么多问题,但你让我走上了正确的道路。
以下是设置驱动器标签的最终代码。对于使用此功能的任何其他人,它将更改连接到系统的任何可移动驱动器的名称。如果您只需要更改特定驱动器型号的名称,则可以使用WMI的Win32_DiskDrive
来缩小范围。
public void SetVolumeLabel(string newLabel)
{
DriveInfo[] allDrives = DriveInfo.GetDrives();
foreach (DriveInfo d in allDrives)
{
if (d.IsReady && d.DriveType == DriveType.Removable)
{
d.VolumeLabel = newLabel;
}
}
}
public string VolumeLabel { get; set; }
// Setting the drive name
private void button1_Click(object sender, EventArgs e)
{
SetVolumeLabel("FlashDrive");
}
答案 1 :(得分:2)
您是否尝试过DriveInfo.VolumeLabel?
http://msdn.microsoft.com/en-us/library/system.io.driveinfo.volumelabel.aspx