IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

[VBS] Monter / Démonter / Contrôler des lecteurs réseaux


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 4
    Par défaut [VBS] Monter / Démonter / Contrôler des lecteurs réseaux
    Bonjour,

    Je fais appel à vous aujourd'hui car je bloque sur script.

    Voici le pseudo algo de ce que je souhaite faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    si r: existe alors
    	si r: != \\serveur1\partage1\ alors
    		demonte lecteur r:
    		monte lecteur r: == \\serveur1\partage1\
    	fin si
    sinon
    	monte lecteur r: == \\serveur1\partage1\
    fin si
    Voici ce que je suis arrivé à pondre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Set NT = WScript.CreateObject("WScript.Network")
     
    If NT.DriveExists("R:") THEN
    	If ''r: != \\serveur1\partage1\ alors
    		NT.RemoveNetworkDrive "R:", bForce, true
    		NT.MapNetworkDrive "R:","\\serveur1\partage1\","True"
    	End If
    Else
    	NT.MapNetworkDrive "S:","\\serveur1\partage1\","True"
    End If
    Vous comprendrez bien vite que je ne suis pas développeur
    Mon blocage est à la ligne 4, je ne sais pas comment récupérer le chemin de mon lecteur pour tester si il est égal à une chaîne de caractère.

    Alors je présume qu'avant de lancer le If, il fait récupérer le chemin du r: dans une variable pour la comparer ensuite à la chaîne de caractère, mais je ne sais pas le faire.

    Merci pour votre aide !
    Mathieu

  2. #2
    Membre chevronné Avatar de pitchalov
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 340
    Par défaut
    Bonjour,

    En jetant un oeil à la doc VBS, les propriétés de l'objet Drive permettent de récupérer toutes les informations dont tu as besoin.
    Par contre, quelques petites erreurs dans ton code, qui l'empêchait de fonctionner (à priori) :
    - La méthode DriveExists est une méthode de l'objet Scripting.FileSystemObject et non de l'objet WScript.Network.
    - Le paramètre "True" de la méthode MapNetworkDrive est un booléen et non une chaine de caractère.
    - Le paramètre bForce de la méthode RemoveNetworkDrive est un booléen. Il faut soit mettre une valeur True ou False, soit définir la valeur de la constante bForce avant de l'appeler.

    Code pour la solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Set objWshNetwork = WScript.CreateObject("WScript.Network")
    Set objFso = CreateObject("Scripting.FileSystemObject")
    strDriveLetter = "R:"
    strSharePath = "\\serveur1\partage1\"
    If objFso.DriveExists(strDriveLetter) THEN
    	Set objDrive = objFso.GetDrive(strDriveLetter)
    	REM WScript.Echo "Drive " & strDriveLetter & " exists. Path : " & objDrive.ShareName
    	If StrComp(strSharePath, objDrive.ShareName, vbTextCompare) <> 0 Then objWshNetwork.RemoveNetworkDrive strDriveLetter, True, True 
    Else
    	REM WScript.Echo "Drive " & strDriveLetter & " does not exist"
    End If
    objWshNetwork.MapNetworkDrive strDriveLetter, strSharePath, True
    Bonne continuation.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 4
    Par défaut
    Bonjour,
    Je vais voir si j'arrive à la faire fonctionner.
    Sinon, j'avais trouvé un moyen alternatif, moins propre, mais qui fera office si besoin.
    Merci pour ton aide en tout cas !

Discussions similaires

  1. Réponses: 9
    Dernier message: 18/01/2012, 18h37
  2. Mapper des lecteurs réseaux en fonction des groupes
    Par spike93 dans le forum VBScript
    Réponses: 3
    Dernier message: 26/03/2010, 08h49
  3. lenteur : utilisation des lecteurs réseaux différents domaines
    Par devlopassion dans le forum Administration
    Réponses: 2
    Dernier message: 19/03/2009, 10h55
  4. script pour nettoyer des lecteurs réseaux
    Par ko0nz dans le forum VBScript
    Réponses: 1
    Dernier message: 06/02/2008, 17h13
  5. Script de connexion / Deconnexion des lecteurs réseaux
    Par f1vincent dans le forum Développement
    Réponses: 1
    Dernier message: 31/01/2007, 16h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo