C’est juste du script (et je suis une quiche en la matière) , pas de la programmation à proprement parler, mais je crois que c’est ici que j’aurai le plus de chance de trouver de l’aide. Voilà donc :
Soit une application (sur laquelle je n’ai aucune prise) qui va chercher certaines infos sur le lecteur M du PC client. Ce lecteur M: est un mappé au démarrage du PC.
Or un utilisateur a besoin d’accéder aux infos d’un site distant. Je vais donc lui faire un petit batch qu’il n’aura qu’à exécuter pour dé-mapper M: et le remapper sur l’autre serveur.
NET USE M: /D
NET USE M: \\serveur2\repertoire
Pour bien faire, l’opération doit être réversible, afin de permettre à l’utilisateur de réutiliser le mapping original à tout moment. Une première solution est de mettre à sa disposition un second script qui rétablit les choses, et de le laisser se débrouiller. Mais ce n’est guère élégant.
Je souhaite donc que le script vérifie lui-même sur quel serveur est mappé M:
C’est bien tout le probleme : Avec les commandes tu vas etre super limité (Le mieux est d’utiliser une variable d’environement dans le script de connexion de session du client… Mais as tu la main dessus ?).
Sinon , si tu fait un “Net Use M:>MonLecteur.TXT”, tu vas récupérer le resultat dans un fichier texte que tu pourras facillement géré avec un script. Mais avec une commande …je ne vois pas trop.
Effectivement, je passe par un fichier texte temporaire, qui comporte le resultat de NET USE M:
Ensuite, je recherche la chaine de caractère correspondant à mon serveur 1 . Si je la trouve, je mappe sur le serveur 2. Si je ne la trouve pas, cela signifie que c’est déjà sur le serveur 2, et donc je mappe sur le serveur 1.
Voici le contenu du batch (sachant que nos serveurs s’appèlent srv-[nom du site]-file: