> Tech > Comment attribuer des ressources réseaux

Comment attribuer des ressources réseaux

Tech - Par iTPro.fr - Publié le 24 juin 2010
email

par Christa Anderson - Mis en ligne le 23/06/2004 - Publié en Septembre 2003

Vos questions invitent à  y regarder de plus près

Voyons comment vous pouvez attribuer des ressources réseau à  des ordinateurs de même nom, et à  des utilisateurs d'après leurs groupes d'appartenance...Dans les articles « Connecter les utilisateurs aux ressources réseau » et « Se connecter aux imprimantes », Windows & .Net Magazine novembre 2002, ou sur www.itpro.fr, j'expliquais comment attribuer des imprimantes et des partages réseau aux utilisateurs d'après les noms d'ordinateurs et les noms d'utilisateurs. Des lecteurs m'ont aussitôt demandé par message électronique s'ils pouvaient faire ce genre d'attribution pour plus d'un utilisateur ou ordinateur à  la fois. C'est possible, mais il ne suffit pas alors de faire des sélections d'après les noms individuels. Voyons comment vous pouvez attribuer des ressources réseau à  des ordinateurs de même nom, et à  des utilisateurs d'après leurs groupes d'appartenance.

Après avoir lu l’article « Se connecter
aux imprimantes », un lecteur m’a posé
cette question : « Supposons que j’ai 20
PC Windows 2000 (nommés Gamma1,
Gamma2,… Gamma20) que je dois associer
à  printer1. Puis-je utiliser une
instruction Select Case et tester la présence
de Case « Gamma* » pour accéder
à  ces PC ? » Si vous utilisiez l’instruction
Select Case comme vous l’avez décrit,
VBScript essaierait de trouver la correspondance
de la chaîne Gamma*
avec la valeur exacte Gamma* – autrement
dit, les seules correspondances
concerneraient les ordinateurs nommés
Gamma*. Le caractère joker que
vous avez l’habitude d’utiliser dans des
recherches ou à  partir de la ligne de
commande, ne fonctionnera pas sans
l’objet RegExp de VBScript, dont je n’ai
pas encore parlé dans un article de la
rubrique Scripting Solutions. En revanche,
si vous avez nommé les ordinateurs
d’après un schéma obéissant à 
l’emplacement de l’ordinateur, la fonction,
ou autre règle, vous pouvez rechercher
des correspondances d’après
la racine commune de ces noms.
Supposons que votre société ait
des stations de travail installées dans le
lab, la bibliothèque et zone de réception,
et que vous ayez nommé ces stations
de travail d’après leur emplacement.
Les stations de travail du lab ont
des noms qui commencent par le préfixe
LAB, celles de la bibliothèque ont
des noms qui commencent par LIBR et
celles de la zone de réception ont des
noms qui commencent par REC. Tous
les noms des stations de travail se terminent
par des nombres à  deux
chiffres, donc les noms des stations de
travail se présentent ainsi : LAB01,
LIBR19 et RECP03.
Le listing 1 montre SetPrinter.vbs,
un script qui définit les imprimantes
par défaut pour ces trois groupes de
stations de travail. SetPrinter.vbs commence
par définir les variables et par
créer l’objet oNetwork pour représenter
un objet WshNetwork. Ensuite, le
script utilise la fonction Left pour capturer
un préfixe de trois caractères à 
partir de chaque nom de station de travail,
puis attribue ce préfixe à  une variable.
Les fonctions Left et Right de
VBScript comptent le nombre de
caractères d’une chaîne et renvoient
le nombre de caractères que vous indiquez. La fonction Left renvoie le
nombre spécifié de caractères provenant
du côté gauche de la chaîne, tandis
que la fonction Right fait de même
avec le côté droit de la chaîne. La syntaxe
des deux fonctions est simple :
elles prennent comme arguments la
chaîne sur laquelle on va travailler et le
nombre de caractères à  renvoyer.
Ainsi, si vous tapez

Left(« gorilla », 2)

la fonction Left renvoie la valeur go. Si
vous tapez

Right(« gorilla », 5)

la fonction Right renvoie la valeur rilla.
Le premier argument de la fonction
Left ou Right n’est pas obligatoirement
une chaîne littérale : on peut fort
bien utiliser du code qui renvoie une
chaîne au moment de l’exécution.
Comme le code du renvoi A dans le listing
1
le montre, SetPrinter.vbs utilise
la propriété computerName de l’objet
WshNetwork pour obtenir le nom de
l’ordinateur à  l’exécution. La fonction
Left capture ensuite les trois premières
lettres du nom de l’ordinateur et les attribue
à  la variable chaîne appelée
sShort. Comme ce script l’illustre, le
nombre de caractères dans sShort
n’est pas obligatoirement le même que
le nombre de caractères dans le préfixe
que vous utilisez dans les noms des ordinateurs.
Dans la mesure où les caractères
dans sShort identifient sans ambiguïté
un groupe particulier
d’ordinateurs, le script fonctionnera.
Enfin, SetPrinter.vbs utilise l’instruction
SelectCase pour comparer les
caractères dans sShort avec les chaînes
Lib, Lab et Rec. Quand sShort trouve la
correspondance avec l’une de ces
chaînes, le script attribue le chemin
d’imprimante approprié à  la variable
sPrintPath. SetPrinter.vbs utilise ensuite
la variable sPrintPath avec les méthodes
AddWindowsPrinterConnection
et SetDefaultPrinter de l’objet
WshNetwork pour ajouter une
connexion d’imprimante et attribuer
l’imprimante par défaut, respectivement.

Téléchargez gratuitement cette ressource

HP Elite Slice G2 : optimisez la collaboration… et votre budget !

HP Elite Slice G2 : optimisez la collaboration… et votre budget !

Téléchargez cette étude Forrester et découvrez comment booster la collaboration tout en dégageant un excellent R.O.I grâce au système de vidéoconférence HP Elite Slice G2 avec Microsoft Teams !

Tech - Par iTPro.fr - Publié le 24 juin 2010