我想创建c#.net windows应用程序,我希望在任何USB设备连接到本地计算机时显示消息。
此连接此USB设备时,我想读取其中的特定文件。
我的问题是如何确定用于读取文件的USB驱动器名称。
例如。在特定的机器上,如果只有两个驱动器(c和d)......在那里检测到的usb驱动器将是e。但是在另一台机器上,如果有3个驱动器,那么在这种情况下USB驱动器可以是f。
在这种情况下,我要做的是在连接USB驱动器和读取该驱动器中的特定文件时显示消息。
答案 0 :(得分:4)
关于第一个问题,请点击此链接:How do I detect when a removable disk is inserted using C#?
对于你问题的其他部分:
此连接此USB设备时,我想阅读一个 其中的特定文件。
您可以获取连接到系统的所有可移动驱动器的drive letter
和volume label
,如下所示:
DriveInfo[] allDrives = DriveInfo.GetDrives();
foreach (DriveInfo d in allDrives)
{
if (d.DriveType == DriveType.Removable)
{
Console.WriteLine("Drive {0}", d.Name);
Console.WriteLine(" Volume label: {0}", d.VolumeLabel);
}
}
如果USB驱动器的音量标签相同,那么其他问题则不然,您必须在连接到系统的所有可移动驱动器中搜索所需文件。
希望它有所帮助。