Script pour connecter un utilisateur sur une imprimante

Une difficulté, une précision posez vos questions

Modérateur : WIN32-[GG]

Répondre
arnaud14690
Batcheur occasionnel
Messages : 1
Enregistré le : 12 févr. 2015 16:28

Script pour connecter un utilisateur sur une imprimante

Message par arnaud14690 »

Bonjour,

Je souhaiterai créer un script ms-dos qui attribut une imprimante a un utilisateur en fonction du poste d’où il se connecte en TSE.

Exemple : l'utilisateur Dupond se connecte sur poste 1 = imprimante 1 par défaut.

L'utilisateur Dupond se connecte sur le poste 2 = imprimante 2 par défaut.

Mais connaissance en ms-dos étant limité, je fait appel au forum.

Merci,
jamesjogi08
Batcheur occasionnel
Messages : 1
Enregistré le : 16 avr. 2015 15:28

Re: Script pour connecter un utilisateur sur une imprimante

Message par jamesjogi08 »

L'utilisateur Dupond se connecte sur le poste 2 = imprimante 2 par défaut.
LNOW
Batcheur débutant
Messages : 17
Enregistré le : 20 déc. 2014 12:28

Re: Script pour connecter un utilisateur sur une imprimante

Message par LNOW »

Bonjour,

Je te conseille d'appeler le script fourni à partir de XP de mémoire: prnmngr.vbs, situé dans Windows\system32 ou Windows\system32\Printing_Admin_Scripts

Pour avoir l'aide: cscript prnmngr.vbs

cscript prnmngr.vbs -l => te permettra de lister les imprimantes présentes
cscript prnmngr.vbs -ac -p "\\srv\imp" => permettra de connecter une imprimante
cscript prnmngr.vbs -t -p "\\srv\imp" => permettra de définir l'imprimante par défaut
je crois que -ac et -t peuvent être cumulées

Ce qui ferait un bout de batch basique:
IF %USERNAME%==MonUser IF %CLIENTNAME%==MonPoste cscript c:\windows\system32\Printing_Admin_Scripts -ac -t -p "\\srv\Imprimante_MonPoste"

A toi de voir ce bout, il y a possibilité d'aller plus loin, et plus propre.
Par exemple, là on ajoute des imprimantes, mais on ne les supprime pas. A faire dans un script de LOGOFF ;-)
Et si tu as besoin, il faudrait "industrialiser" cela avec un fichier de référence que tu positionnes dans ton dossier de LOGON et que tu parses pour connecter l'imprimante.

Par exemple, pour un fichier IMP_DEF.TXT contenant des lignes USER;POSTE;\\srv\IMP (délimiteur point virgule):

Code : Tout sélectionner

FOR /F "delims=; tokens=1,2,3" %%a in (\\DOMAIN\NETLOGON\IMP_DEF.TXT) DO IF %USERNAME%==%%a IF %CLIENTNAME%==%%b c:\windows\system32\Printing_Admin_Scripts -ac -t -p "%%c"
Ca devrait le faire (remplacer DOMAIN par le nom de ton domaine).

A+
Laurent.
Répondre