2009-04-07 7 views
0

Existe-t-il une classe ou une API disponible en C# pour obtenir les lecteurs réseau disponibles ou le dernier lecteur disponible pour le mappage? Par exemple "Z:". Quelque chose comme ceci:Comment obtenir un lecteur réseau disponible pour le mappage?

string mappeddrive = MappDriveUtil.GetLastAvailableMappedDrive(); // utility class 

Puis-je simplement scanner les lecteurs locaux et mappés pour le savoir? Comment analyser tous les lecteurs locaux et mappés déjà utilisés si c'est le moyen de le savoir?

Répondre

3

Ceci est une de ces questions qui n'a pas de bonne réponse. Vous pouvez certainement utiliser DriveInfo.GetDrives pour énumérer tous les lecteurs actuellement disponibles. De cela, vous pouvez déduire quels lecteurs n'ont pas été cartographiés. Le problème est que vous ne pouvez dire que les lecteurs non mappés ne sont pas mappés. Entre l'appel à GetDrives() et le mappage du lecteur, il est tout à fait possible qu'un autre programme arrive et mette en correspondance le lecteur que vous avez choisi. Votre solution doit prendre en compte cette possibilité ou elle souffrira de problèmes de fiabilité dans ce domaine.

+0

C'est vrai. En fait, ce que je vais faire est de démapper un disque spécifié avant de le mapper, au lieu de trouver le disque disponible. –

Questions connexes