2011-05-13 24 views
6

Bilgisayara bağlı flash sürücülerdeki birim etiketini değiştirmek istediğim küçük bir yardımcı program üzerinde çalışıyorum. DriveInfo'nun bunu yapabildiğini biliyorum ama bunu nasıl yapacağım konusunda bir kayıp yaşıyorum. Herhangi bir kod örneği varsa, bunu gerçekten takdir ediyorum.Sürücü Sesini AyarlaLabel

DriveInfo[] allDrives = DriveInfo.GetDrives(); 
foreach (DriveInfo d in allDrives) 
{ 
    if (d.IsReady && d.DriveType == DriveType.Removable) 
    { 
     //set volume label here 
    } 
} 
+1

tüm * çıkarılabilir sürücüler değil aklınızdaki (olmamalı) ne * aynı birim etiketi ayarlama. Willy-Nilly sürücü verilerini değiştirmeyin. Kullanıcıdan devam et. –

+0

Bu "willy-nilly" yapılmazdı, aslında bir tuşa basarak kullanıcı (me) tarafından yapılacaktı. Yeniden adlandırılan diskleri otomatikleştirmek, bu yüzden yüzlerce kez elle yapmak zorunda değilim. – Paxamime

cevap

4

Teşekkür James! Bunun neden bu kadar çok sorun yaşadığını bilmiyorum ama doğru yoldan aşağı iniyorsun.

Sürücü etiketini ayarlamak için son kod. Bunu kullanan herkes için, sisteme bağlı olan HERHANGİ bir çıkarılabilir sürücünün adını değiştirecektir. Yalnızca belirli sürücü modellerinin adlarını değiştirmeniz gerekirse, WMI'nın Win32_DiskDrive'u daraltmak için kullanabilirsiniz.

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"); 
} 
İlgili konular