Прежде всего, вполне возможно, что я неправильно подхожу к своей проблеме, и в этом случае я бы с радостью принял альтернативы.
Я пытаюсь определить, какой диск был создан после подключения USB-устройства к компьютеру.
Вот упрощенный рабочий процесс:
// Get list of removable drives before user connects the USB cable
List<string> listRemovableDrivesBefore = GetRemovableDriveList();
// Tell user to connect USB cable
...
// Start listening for a connection of a USB device
...
// Loop until device is connected or time runs out
do
{
...
} while
// Get list of removable drives after USB device is connected
List<string> listRemovableDrivesAfter = GetRemovableDriveList();
// Find out which drive was created after USB has been connected
???
GetRemovableDriveList
возвращает список строк букв сменных дисков.
Моя идея состояла в том, чтобы получить список съемных дисков до , к которому подключено устройство, и другой список после , к которому оно подключено, и что, удалив содержимое первого списка из второго, У меня останутся только что подключенные диски (обычно только один).
Но я не могу найти простой способ «вычесть» один список из другого. Любой может предложить решение или даже лучший способ добиться того, что я пытаюсь сделать.
Примечание : проект нацелен на .NET Framework 2.0, поэтому LINQ невозможен.
Спасибо!