Hola necesito para detectar todas las unidades de medios extraíbles ia menú desplegable en C#obtener la lista de las unidades de medios extraíbles en C#
será apreciado Cualquier ayuda
Gracias
Hola necesito para detectar todas las unidades de medios extraíbles ia menú desplegable en C#obtener la lista de las unidades de medios extraíbles en C#
será apreciado Cualquier ayuda
Gracias
Puede usar el DriveInfo type para recuperar una lista de las unidades. Es necesario comprobar la DriveType property (enum)
var drives = DriveInfo.GetDrives();
foreach (var drive in drives)
{
if (drive.DriveType == DriveType.Removable)
{
Console.WriteLine(drive.Name);
}
}
También puede utilizar LINQ a objetos para consultar las unidades:
var drives = from drive in DriveInfo.GetDrives()
where drive.DriveType == DriveType.Removable
select drive;
foreach(var drive in drives)
{
Console.WriteLine(drive.Name);
}
Al igual que el @TheCodeKing menciona también se puede utilizar WMI para consultar la unidad información.
Por ejemplo, se puede consultar para memorias USB de la siguiente manera:
ManagementObjectCollection drives = new ManagementObjectSearcher(
"SELECT Caption, DeviceID FROM Win32_DiskDrive WHERE InterfaceType='USB'"
).Get();
añadir una referencia a la asamblea System.Management si se va a utilizar WMI.
Si desea llenar un ComboBox en una aplicación de Windows Forms con estos datos, debe vincular los resultados al control ComboBox.
Por ejemplo:
private void Form1_Load(object sender, EventArgs e)
{
var drives = from drive in DriveInfo.GetDrives()
where drive.DriveType == DriveType.Removable
select drive;
comboBox1.DataSource = drives.ToList();
}
Para recapitular:
También tenga en cuenta que si Si desea incluir unidades de CD-Rom, no se consideran 'Extraíbles' en la enumeración 'DriveType'. También es posible que desee comprobar '|| drive.DriveType == DriveType.CDRom' –
gracias a todos por su ayuda, pero podría alguien decirme cómo agregar un menú desplegable en mi aplicación C# winform y luego llenarlo con las etiquetas y letras de los controladores – shandoosheri
Actualicé mi respuesta para mostrar cómo puede vincular estos resultados a un control ComboBox en una aplicación de Windows Forms. –
Tiene que utilizar WMI para esto, consulte este link para obtener información y ejemplos.
+1 por mencionar WMI. Aquí hay un ejemplo que usa WMI para consultar información de la unidad: http://www.geekpedia.com/tutorial233_Getting-Disk-Drive-Information-using-WMI-and-Csharp.html –
posible duplicado de [GetDriveType en C#? o averiguar si mi disco es extraíble?] (http://stackoverflow.com/questions/623254/getdrivetype-in-c-or-find-out-if-my-drive-is-removable) –