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

Scripts/Batch Discussion :

lettre de lecteur réseau dynamique [PowerShell]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 75
    Par défaut lettre de lecteur réseau dynamique
    Bonjour,

    J'ai un script ps qui me permet de connecter un lecteur réseau selon le groupe d'appartenance de l'utilisateur. (lancé par GPO au logon)

    Chaque partage est attribué avec la lettre de lecteur W (j'ai trop de partage pour affecter une lettre différente à chaque partage)

    mon problème est qu'il est possible qu'un utilisateur appartienne à 2 groupes différents, à ce moment là, il aurait 2 lecteurs W: => impossible.

    est-il possible d'affecter une lettre de lecteur dynamiquement ? par exemple de lister les lecteurs déjà présents et d'y affecter une lettre à la suite ?

    voici mon bout de script qui permet de créer le lecteur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (EstDansGroupe($Shop_group)) {
       Write-Host $CurrentUser " appartient au groupe " $Shop_Group
       $obj.MapNetworkDrive("W:", "\\"+$Serveur+"\"+$Shop_Share)
    }
    j'ai déjà fait pas mal de recherche sur le net et je n'arrive pas à trouver.

    merci d'avance

  2. #2
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Salut,
    il faut déjà regarder la liste des membres de l'objet que tu utilises :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $m=New-Object -ComObject WScript.Network
    $m|Get-Member
    On peut supposer que la méthode suivante réponde à ton besoin :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $M.EnumNetworkDrives()

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 75
    Par défaut
    bonjour et merci pour ta réponse.

    en ce qui concerne la méthode $M.EnumNetworkDrives() que tu proposes voilà ce que j'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    $CurrentUser =QuiEstConnecte
    $mappedDrives = @{}
    $obj = New-Object -com Wscript.Network
    $Letter = $obj.EnumNetworkDrives()
    $Count = $Letter.count()
    
    for ($i=0; $i -lt $Count; $i = $i+2)
    {
    	$Drive = $Letter.item($i)
    	$Path = $Letter.item($i+1)
    #	$mappedDrives[$Drive] = $Path
    }
    if (EstDansGroupe($BCOM_group)) {
       Write-Host $CurrentUser " appartient au groupe " $Shop_Group
       $obj.MapNetworkDrive($Path,"\\"+$Serveur+"\"+$SHOP_Share)
    }
    bien evidemment cela ne fonctionne pas, mon $Path n'est pas accepté ...
    je suis complètement débutante en powershell, j'ai essayé de faire cette adaptation par rapport aux infos trouvées sur le net mais là ... j'ai vraiment du mal

    pourrais-tu m'éclairer un peu sur mes erreurs ?

    merci d'avance

  4. #4
    Membre éprouvé
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2008
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2008
    Messages : 100
    Par défaut
    Bonjour,

    Tu peux essayer quelque chose comme ça !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    $serveur = ""
    $letters = @('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z')
    $obj = New-Object -com Wscript.Network
    $obj.EnumNetworkDrives() | % { if ($_ -match ":") { 
            if ( $_ -match 'Z') { Write-Host "Plus de lettres dispo" }
            else { $lastletter = $_ }
        } 
    } 
    
    $i = 0
    $letters | % {
        $i++  
        if ($_ -eq $lastletter ) { 
            $i++
            $LettreLecteur = $letters[$i]
        }
     }
    
    if (EstDansGroupe($BCOM_group)) {
       Write-Host $CurrentUser " appartient au groupe " $Shop_Group
       $obj.MapNetworkDrive($LettreLecteur,"\\"+$Serveur+"\"+$SHOP_Share)
    }
    J'ai pas testé la partie qui crée le lecteur réseau étant donné que je peux pas le faire au boulot

  5. #5
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par FloFlo12 Voir le message
    pourrais-tu m'éclairer un peu sur mes erreurs ?
    Quels messages d'erreur as-tu ?
    Citation Envoyé par SiSMik Voir le message
    Tu peux essayer quelque chose comme ça !
    Une simplification :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [Char[]]$Letters = [char]'A'..[Char]'Z'

  6. #6
    Membre Expert
    Avatar de I'm_HERE
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 013
    Par défaut
    salut,


    Citation Envoyé par Laurent Dardenne Voir le message
    Une simplification :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [Char[]]$Letters = [char]'A'..[Char]'Z'
    joli

    une autre variante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $Letters=65..90 -as [char[]]

  7. #7
    Membre éprouvé
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2008
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2008
    Messages : 100
    Par défaut
    Citation Envoyé par Laurent Dardenne Voir le message
    Une simplification :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [Char[]]$Letters = [char]'A'..[Char]'Z'
    Ouais j'avais bien pensé à un truc du style, mais je voyais pas comment définir le type "lettre" puis c'était juste avant de partir du boulot donc... bon hein

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment accéder à un lecteur réseau qui n'a pas de lettre ?
    Par Patrick075 dans le forum Microsoft Office
    Réponses: 1
    Dernier message: 11/03/2014, 11h16
  2. lettre du lecteur réseau
    Par amnorian dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/05/2011, 09h06
  3. Connaître la lettre dédiée à un lecteur réseau.
    Par pcvesoul dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 14/02/2006, 12h53
  4. [exporter] Exporter la base vers lecteur réseau..
    Par terziann dans le forum Administration
    Réponses: 3
    Dernier message: 15/11/2005, 11h02
  5. [Lecteur] Lettre du lecteur de CD
    Par petit scarabée dans le forum Installation, Déploiement et Sécurité
    Réponses: 6
    Dernier message: 05/09/2002, 18h47

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