Comme le titre l'indique, comment obtenir le lecteur actuel du système d'exploitation, afin de l'ajouter dans une chaîne, par exemple:
MessageBox.Show(C:\ + "My Documents");
Merci
Ajouter une référence système IO,
using System IO;
Ensuite, écrivez votre code comme ceci;
string path = Path.GetPathRoot(Environment.SystemDirectory);
Ce code définira path
sur la lettre de lecteur local indiquant que Windows a été installé. Vous pouvez utiliser la variable ci-dessus pour d'autres modifications.
par exemple:
MessageBox.Show("Windows is installed to Drive " + path);
Lorsque vous recherchez un dossier spécifique (tel que Mes documents), n'utilisez pas de chemin codé en dur. Les chemins d'accès peuvent changer de version à version de Windows (C:\Documents and Settings\
vs C:\Users\
) et ont été localisés dans des versions plus anciennes (C:\Users\user\Documents\
vs C:\Usuarios\user\Documentos\
). Selon la configuration, les profils utilisateur peuvent se trouver sur un lecteur différent de Windows. Windows peut ne pas être installé où vous vous attendez (il ne doit pas nécessairement être en \Windows\
). Il y a probablement d'autres cas dont je ne suis pas au courant.
Au lieu de cela, utilisez l'API Shell (SHGetKnownFolderPath
) pour obtenir le chemin d'accès réel. En .NET, ces valeurs sont facilement obtenues à partir de Environment.GetFolderPath
. Si vous recherchez le dossier Mes documents de l'utilisateur:
Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
Vous pouvez utiliser Environment.CurrentDirectory pour obtenir le répertoire actuel. Environment.SystemDirectory vous donnera le dossier système (ex: C:\Windows\System32). Path.GetPathRoot vous donnera la racine du chemin:
var rootOfCurrentPath = Path.GetPathRoot(Environment.CurrentDirectory);
var driveWhereWindowsIsInstalled = Path.GetPathRoot(Environment.SystemDirectory);
Si cela ne vous dérange pas d'analyser un peu: http://msdn.Microsoft.com/en-us/library/system.environment.systemdirectory.aspx
Environment.systemdirectory renvoie le répertoire en cours.