imprimante réseau, gpo, con2prt et utilisateurs

imprimante réseau, gpo, con2prt et utilisateurs - Windows & Software

Marsh Posté le 17-12-2004 à 15:14:21    

Soit :
 
3 salles :
A018, A019, A020
Avec chacune une imprimante (imp-a018, imp-a019, imp-a020)
 
Des utilisateurs utilisant les 3 salles de façon indiférentes.
 
Je veux :  
Quand l'utilisateur est dans la salle A018, l'imprimante par defaut soit imp-a018
Quand l'utilisateur est dans la salle A019, l'imprimante par defaut soit imp-a019
Quand l'utilisateur est dans la salle A020, l'imprimante par defaut soit imp-a020
 
 
 
Pour l'instand :  
Avec con2prt + script gpo utilisateur j'arrive à monter une imprimante réseau par defaut mais celle-ci est la meme pour l'utilisateur quel que soit la salle.
 
 
donc si vous avez une idée ou une autre approche du problème, je suis preneur.


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 17-12-2004 à 15:14:21   

Reply

Marsh Posté le 18-12-2004 à 12:05:26    


Tout d'abord, voici comment connecter une imprimante réseau en VBS
 
    '  
    'Connexion à une imprimante
    '  
    PrinterPath = ("\\Nom_du_serveur\Nom_imprimante" )
    PrinterDriver = "Nom_imprimante"
    WshNetwork.AddWindowsPrinterConnection PrinterPath, PrinterDriver
    WshNetwork.SetDefaultPrinter (PrinterPath)

 
Cet extrait est à placer dans le script de connexion du user.
 
 
Pour que le WshNetwork.SetDefaultPrinter (PrinterPath) soit effectué  
vers l'imprimante de la salle, j'ai nommé mes postes sous la forme
S108P23  ( salle 108 poste 23 )
Les 4 premiers caractères correspondant à la salle.
 
Tu récupère le nom du poste avec les lignes suivantes
 
Set WshNetwork = WScript.CreateObject("WScript.Network" )
'nom_user = wshNetwork.UserName
'nom_domaine = wshNetwork.userdomain
Nom_Poste = wshNetwork.ComputerName

 
Ensuite tu récupères les 4 ( ou autres ) premiers caractères
 
puis tu compares par un Select case ( en vbs)
pour affecter une imp. par défaut.
 
 

Reply

Marsh Posté le 18-12-2004 à 12:35:54    

vouais, l'idée de c_moa est bonne, mais si tu n'as pas utiliser son system de nomage des poste, tu peux toujours recourir à un fichier ini, ce que j'ai fait...

Reply

Marsh Posté le 18-12-2004 à 12:51:22    

En effet.
 
Ya plus qu'a me plonger sur la programmation  de script vbs :D


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 18-12-2004 à 12:55:08    

Perso, j'ai fait un script VBS différent suivant les salles que je place dans le dossier démarrage du profil all user des postes

Reply

Marsh Posté le 18-12-2004 à 12:55:44    

Courage...
Un ptit site pour débuter:
www.bellamyjc.net
Le webmaster est un peu "space", mais le contenu, les explications et les exemples sont de valeurs.

Reply

Marsh Posté le 18-12-2004 à 12:55:52    

ouais j'ai aussi cette solution, utiliser le dossier demarrage de chaque poste

Message cité 1 fois
Message édité par com21 le 18-12-2004 à 12:56:14

---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 18-12-2004 à 18:27:32    


 
 
http://www.microsoft.com/technet/s [...] fault.mspx
 
 
(Eventuellement télécharger le fichier script repository pour une consultation hors ligne )
 
 
L'idée du dossier démarrage ou du fichier .ini est très bonne , mais si tu dois changer de type d'imprimante ( panne, ...  ), la modif est à faire sur tous les postes.
La modif peut être scriptée ou gérée par GPO, mais cela devient lourd.
 
Le fait d'avoir des postes avec une dénomination cohérente du genre B10S108P13   (batiment 10 salle 109 poste 13 ) simplifie la gestion par script (VBS).
 

Reply

Marsh Posté le 18-12-2004 à 19:13:14    

Citation :

L'idée du dossier démarrage ou du fichier .ini est très bonne , mais si tu dois changer de type d'imprimante ( panne, ...  ), la modif est à faire sur tous les postes.


 
mais non! [:antp]  tu fous le fichier ini dans un dossier partagé sur le serveur et tu fous le chemin UNC dans ton script lancé par la GPO...
 

Citation :

La modif peut être scriptée ou gérée par GPO, mais cela devient lourd.


Les GPO, c'est pas lourd! Justement pas! [:alolao]  C'est de foutre des script dans le dossier démarrage en local qui est lourd et quasi ingérable...
 

Reply

Marsh Posté le 20-12-2004 à 20:25:41    

Citation :

Les GPO, c'est pas lourd! Justement pas! [:alolao]  C'est de foutre des script dans le dossier démarrage en local qui est lourd et quasi ingérable...


 
??? Il n'est pas question de mettre des scripts en local, et quand je parle ci-dessus de GPO, ce serait pour corriger d'éventuels paramètres locaux.
 
Je gère cela par gpo via scripts vbs au "logon" de l'utilisateur.  
On peut éventuellement externaliser le nom de l'imp. dans un fichier .ini comme le propose helvetik .  
Mais je suis curieux de savoir comment le script reconnait le poste ( donc la salle ) sur lequel travaille le user.

Reply

Marsh Posté le 20-12-2004 à 20:25:41   

Reply

Marsh Posté le 20-12-2004 à 23:46:31    

3 UO :
Uo1 avec dedans les machines de la salle A018
UO2 avec dedans les machines de la salle A019
UO3 avec dedans les machines de la salle A020
 
tes users dans d'autres UO.
 
pour chacun des UO 1,2 et 3, une strategie machine : bouclage de rappel parametrée en fusion + une strategie user qui lance un script VB tel que celui de c_moa.
chacun des scripts lance le montage de ou des imprimantes + l'imprimante par defaut, le tout associé à la salle.
 
 

Reply

Marsh Posté le 21-12-2004 à 18:43:13    

Perso, je ne mets pas le paramétrage des imprimantes au niveau des machines, mais au niveau des users car certaines salles ont une imprimante laser couleur qui ne doit pas être accessible à tous les comptes.
 
Pour le cas de com21, on peut imaginer déclarer une imprimante laser couleur pour les comptes profs et pas pour les élèves.
 
C'est pour ce genre de cas que je préfère gérer les imp. au niveau gpo user plutôt qu'au niveau machine.


Message édité par c_moa le 21-12-2004 à 18:43:45
Reply

Marsh Posté le 21-12-2004 à 22:02:38    

c_moa a écrit :

Perso, je ne mets pas le paramétrage des imprimantes au niveau des machines, mais au niveau des users.

   
mais moi aussi  :o    ;)  
la strategie machine, c'est la boucle de rappel qui permet au user de pas jouer sa strategie user normale (liée à son UO) mais de jouer celle qu'on va définir pour cette UO (celle des machines de la salle X)  :)  
 
la ou les strategies users definies sur cette UO permettront de monter via script imprimantes, lecteur reseaux, ...en fonction de groupes eventuellement (groupe profs, groupe eleve ...)
 
a noter que le bouclage de rappel permet de zapper completement la strategie user au profit d'une autre ou de fusionner les deux.
 
  :)


Message édité par i'm philou le 21-12-2004 à 22:03:40
Reply

Marsh Posté le 22-12-2004 à 11:44:27    

Citation :

pour chacun des UO 1,2 et 3, une strategie machine : bouclage de rappel parametrée en fusion + une strategie user qui lance un script VB tel que celui de c_moa.


 
Oups !  
J'ai lu ton post un peu trop en diagonale.
 
Par contre, je ne connaissais pas le paramètre avancé "Bouclage"
 
 
http://www.microsoft.com/windows20 [...] htm?id=895
 
Intéressant....
 
Dommage que je suis toujours à la bourre, je n'ai souvent pas le temps d'approfondir les notions un peu avancées.


Message édité par c_moa le 22-12-2004 à 12:02:04
Reply

Marsh Posté le 22-12-2004 à 17:26:23    

c_moa a écrit :

Perso, je ne mets pas le paramétrage des imprimantes au niveau des machines


Ouais, mais pour définir une imprimante par défaut, s'est quand meme mieux de savoir sur quel poste il s'est loggué, histoire de pas lui mettre celle qui se trouve au 11ème étage du batiment voisin... ;)


Message édité par helvetik le 22-12-2004 à 17:27:07
Reply

Marsh Posté le 22-12-2004 à 17:28:44    

c_moa a écrit :

[quote]
Dommage que je suis toujours à la bourre, je n'ai souvent pas le temps d'approfondir les notions un peu avancées.


+1

Reply

Marsh Posté le 22-12-2004 à 17:32:10    

Moi non plus je connais pas "bouclage"   mais je sens que je vais connaitre.
 
 
Vais tester ça à la rentrée.


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 24-12-2004 à 12:40:04    

c_moa a écrit :


 
Dommage que je suis toujours à la bourre, je n'ai souvent pas le temps d'approfondir les notions un peu avancées.


 
+1  ;)  
pour info, la GPO s'appelle exactement "mode de traitement par boucle de rappel de la strategie de groupe" (et pas bouclage)
 
on la trouve dans confi ordinateur/modeles d'administration/systeme/strategie de groupe
 
hyper pratique pour affecter une strategie user particuliere en fonction d'un contexte machine (ex : une borne internet publique avec une strategie speciale quelqe soit le user connecté dessus sans que le user perde sa strategie "normale" quand il est logé dans son environnement normal)
 
bonnes fêtes à tous !
 :)


Message édité par i'm philou le 24-12-2004 à 12:41:17
Reply

Marsh Posté le 03-01-2005 à 09:00:10    

Merci tous pour ces informations.
 
ça marche PARFAITEMENT.
 
pratique cette gpo


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 06-02-2005 à 16:32:38    

c_moa a écrit :


Pour que le WshNetwork.SetDefaultPrinter (PrinterPath) soit effectué  
vers l'imprimante de la salle, j'ai nommé mes postes sous la forme
S108P23  ( salle 108 poste 23 )
Les 4 premiers caractères correspondant à la salle.
 
Tu récupère le nom du poste avec les lignes suivantes
 
Set WshNetwork = WScript.CreateObject("WScript.Network" )
'nom_user = wshNetwork.UserName
'nom_domaine = wshNetwork.userdomain
Nom_Poste = wshNetwork.ComputerName

 
Ensuite tu récupères les 4 ( ou autres ) premiers caractères
 
puis tu compares par un Select case ( en vbs)
pour affecter une imp. par défaut.


 
Bonjour,
 
Je souhaite faire exactement comme c_moa.
 
Je viens de mettre en place un serveur 2003, j'utilise IACA (Education nationale) pour la gestion des comptes et des stratégies.
 
14 Salles infos avec une imprimante partagée par salle, j'utilise la même façon de nommer les postes que c_moa :
- S301_P01 à S301_P14 (avec une imprimante partagée sur un poste),
- S302_P01 à S302_P14 (avec une imprimante partagée sur un poste),
- etc...
 
Avec IACA, chaque user voit les imprimantes de toutes les salles (ce qui est très bien), par contre quelque soit la machine utilisée ce sera la même imprimante par défaut.
 
Je dois donc simplement changer par un script l'imprimante par défaut.
 
Tout d'abord ,
 
Comment récupérer uniqument les 4 premières lettres du nom de la machine ?
 
Comment faire la comparaison avec le Select case ?
 
Lorsque je saurai :
- que le user est sur la machine S303_P13
- que les 4 premières lettres sont S303
 
Comment faire pour mettre l'imprimante \\\\S303_P01\\HPS303 par défaut (sachant que pour l'instant après démarrage de la machine, celle-ci apparaît dans le panneau de configuration du user mais elle n'est pas déclarée par défaut) ?
 
Je sais j'en demande beaucoup, mais je ne sais pas écrire une ligne en VBA (je vais m'y mettre, mais comme je suis dans l'urgence et que ne n'ai pas un livre de VBA sous la main)...
 
Merci et bonne journée à tous...

Reply

Marsh Posté le 06-02-2005 à 19:26:47    

:pfff:  t'as pas besoin d'un livre pour apprendre vbs. Une connexion internet et surtout beaucoup de motiviation suffisent.
 
Va sur www.bellamyjc.net. Sa section vbs répondra a toutes tes question.

Reply

Marsh Posté le 07-02-2005 à 01:23:40    

Merci helvetik pour l'info.
 
Voici mon premier script vbs pour connecter une imprimante...
 
Exemple avec 3 salles (XP), connection à l'imprimante et affectation par défaut en fonction du nom de la machine.
 
Est-ce que quelqu'un pourrait jeter un coup d'oeil et me corriger pour la syntaxe...
 
Merci et bonne nuit...
 
 
 
'Script pour créer une connexion d’imprimante propre à un ordinateur
 
Option Explicit
Dim oNetwork, sPrintPath
 
'Récupération du nom du poste
Set oNetwork = CreateObject("WScript.Network" )
nom_poste = wshNetwork.ComputerName
 
'Récupération des 4 premiers caractères du nom de la machine
extraction = left(nom_poste,4)
 
'Comparaison par un Select case
Select Case extraction
  Case "S301"
    sPrintPath = "\\S301\HP"
  Case "S302"
    sPrintPath = "\\S302\HP"
  Case Else
   sPrintPath = "\\S303\HP"
End Select
 
'Connection de l'imprimante
oNetwork.AddWindowsPrinterConnection sPrintPath
 
'Affectation de l'imprimante par défaut
oNetwork.SetDefaultPrinter sPrintPath  

Reply

Marsh Posté le 07-02-2005 à 10:24:33    

et en s'appuyant sur les sites y a pas moyen ?!

Reply

Marsh Posté le 07-02-2005 à 10:38:34    

brainbugs a écrit :

et en s'appuyant sur les sites y a pas moyen ?!


 :??:  Mais encore?
 
 
silvano> Ben voilà. Tu vois que c'est pas compliqué ;) J'ai l'impression que c'est tout a fait correct.
 :jap:

Reply

Marsh Posté le 07-02-2005 à 11:06:27    

helvetik a écrit :

:??:  Mais encore?
 :jap:


 
pour une machine (ou OU) on peut forcer l'appartenance à un site. Je me demandais s'il etait pas possible de definir une GPO lié à ce site
 
genre un site par salle.

Reply

Marsh Posté le 07-02-2005 à 11:39:17    

Ah, heu, ben là ca dépasse mon domaine de compétence.
Si j'ai un peu de temps, je vais voir si je trouve des info la dessus.
A+

Reply

Marsh Posté le 07-02-2005 à 20:10:16    

Bonjour Helvetic
 
Merci pour tes encouragements    :)  
 
Voici le script juste (j'avais une petite erreur) :
 
 

Citation :

'Script pour créer une connexion d’imprimante propre à un ordinateur  
 
Dim oNetwork, sPrintPath  
 
'Récupération du nom du poste  
Set oNetwork = CreateObject("WScript.Network" )  
nom_poste = oNetwork.ComputerName  
 
'Récupération des 4 premiers caractères du nom de la machine  
extraction = left(nom_poste,4)  
 
'Comparaison par un Select case  
Select Case extraction  
  Case "S301"  
    sPrintPath = "\\S301\HP"  
  Case "S302"  
    sPrintPath = "\\S302\HP"  
  Case Else  
   sPrintPath = "\\S303\HP"  
End Select  
 
'Connection de l'imprimante  
oNetwork.AddWindowsPrinterConnection sPrintPath  
 
'Affectation de l'imprimante par défaut  
oNetwork.SetDefaultPrinter sPrintPath


 
Je vais simplement apporter une petite amélioration qui est d'abord de déconnecter l'imprimante avant d'en connecter une autre.
 
A+

Reply

Marsh Posté le 11-04-2005 à 15:28:06    

Bonjour, un ptit up pour un topic hyper intéressant :)
 
Je me trouve dans une situation identique, mais à la fois plus simple et plus compliquée :D
 
Plus simple car les utilisateurs ne changent pas de poste dans mon cas, chaque user est sur sa machine et n'en change jamais.
 
Plus compliqué car je n'ai jamais touché au vbs :D
 
On passe donc le domaine en 2003 et je voulais mettre en place un petit script pour installer les imprimantes.
 
Les bureaux sont sur deux étages, donc je pensais créer un UO pour chaque étage et mettre un script pour installer les imprimantes par étage(plus précisément, je pense que les imprimantes des deux étages seront installées sur les posts car elles leur servent toutes et mes utilisateurs sont assez chevronés pour changer d'imprimante :)).
 
Je voulais donc savoir la manière la plus simple en vbs pour y arriver (sachant si ca peut aider que les imprimantes ont leur propres adresses IP et ne sont pas reliées à un serveur)
 
Le ptit noobadmin débutant que je suis vous remercie par avance.

Reply

Marsh Posté le 11-04-2005 à 15:29:22    

pas de serveur d'impression....
 
Oh my god.


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 11-04-2005 à 15:31:13    

Euh si désolé, il y a bien un serveur d'impression, je confonds avec un autre client (structure plus petite donc pas de serveur d'impression pour eux) :D

Reply

Marsh Posté le 11-04-2005 à 15:39:21    

Syntax  
      CON2PRT /f
      CON2PRT /c \\PrintServer\PrintShare
      CON2PRT /cd \\PrintServer\PrintShare
 
Key
       /f  - remove all network printer connections
       /c  - connect to \\PrintServer\PrintShare
       /cd - connect to and set PrintShare as the default printer


 
cf http://www.ss64.com/nt/con2prt.html
 
Perso j'utilise ça, pas de vbs à foutre....


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 11-04-2005 à 16:28:05    

Et le zak en question, ca fout pas trop le foutoir sur le serveur? C'est simple à installer où il demande trente six mille paramètres?

Reply

Marsh Posté le 11-04-2005 à 16:32:30    

c'est juste un fichier à télécharger (con2prt) et à télécharger dans un dossier ou les utilisateurs ont le droit de lire  (au hazard, le dossier netlogon)
Pour les paramètres : comme tu le vois, il y en a 3 différents.
 
 
 


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 12-04-2005 à 19:46:13    

ouais mais... si le user n'est pas admin de son poste, il ne peut pas installer le DRV publié par le srv. :)
 

Reply

Marsh Posté le 12-04-2005 à 20:17:11    

Par script il n'y a aucun probleme....
 
(mes users ne sont pas admin et ça marche très bien)
 
De toute façon par cette methode ou par .reg ya tjrs un drivers qui est appliqué
 


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 12-04-2005 à 20:34:07    

ca marche parceque le DRV est integré à XP.

Reply

Marsh Posté le 12-04-2005 à 20:52:53    

Non, pas forcément.
Il le télécharge du serveur d'impression le serveur.


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le 12-04-2005 à 21:29:10    

brainbugs a écrit :

ouais mais... si le user n'est pas admin de son poste, il ne peut pas installer le DRV publié par le srv. :)


Si, mais uniquement des imprimante réseau. Pas d'imprimantes locales.


---------------
---helvetik---
Reply

Marsh Posté le 12-04-2005 à 21:51:17    

ben... non. Il faut que le DRV ait ete installé par un autre utilisateur. Ou alors que ce soit un pilote par defaut de win Xp
 
dans le doute des que j'ai un moment je (re)testerai


Message édité par brainbugs le 12-04-2005 à 21:52:01
Reply

Marsh Posté le 12-04-2005 à 21:55:22    

Je t'assure que non....
 


---------------
Cherche geekette | Traquez vos billets d'€ | Don du sang | Don de moelle osseuse
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed