2011-06-17 8 views
3

Je suis en train d'écrire un fichier qui extrait xml pour obtenir le nom des fichiers et doit copier ces fichiers sur le lecteur USB. Les 2 premières étapes j'ai pu faire ceci. Mais des questions est:C# Vérification de la présence du lecteur USB

  1. Comment puis-je détecter s'il y a un lecteur USB
  2. détecter ensuite ce qui est le conduire.

Merci!

+1

double possible de [Comment détecter une lettre de lecteur USB de l'application C#?] (Http://stackoverflow.com/questions/1273872/how-do-i-detect-a-usb-drive -letter-from-ac-application) –

+0

écrivez-vous un virus? –

Répondre

1

Vérifier DriveInfo.GetDrives() pour DriveType.Removeable propriété puis vérifiez FullName

5

Ce code va dans l'autre sens, mais il gère le "comment puis-je trouver une clé USB" question:

using System.IO; 

//. . .

 foreach (DriveInfo removableDrive in DriveInfo.GetDrives().Where(
      d => d.DriveType == DriveType.Removable && d.IsReady)) 
     { 
      DirectoryInfo rootDirectory = removableDrive.RootDirectory; 
      string monitoredDirectory = Path.Combine(rootDirectory.FullName, DIRECTORY_TO_MONITOR); 
      string localDestDirectory = Path.Combine(destDirectory, removableDrive.VolumeLabel); 
      if (!Directory.Exists(localDestDirectory)) 
       Directory.CreateDirectory(localDestDirectory); 
      if (Directory.Exists(monitoredDirectory)) 
      { 
       foreach (string file in Directory.GetFiles(monitoredDirectory)) 
       { 
        File.Copy(file, Path.Combine(localDestDirectory, Path.GetFileName(file)), true); 
       } 
      } 
     } 
+0

C'est excellent. Je vous remercie! –

Questions connexes