bonjour,

comme je l'ai dit dans mon poste précédent, je suis débutant en développement et encore plus en VBS.
Je me suis lancé dans un script qui écrirait dans un fichier txt le nom de l'user avec les noms d'imprimantes qu'il utilise à sa connexion. Ca listerait donc tous les utilisateurs utilisant les imprimantes (tel utilisateur utilise telle ou telle imprimante)

Pour l'instant j'arrive a récupérer le nom des imprimantes utilisées:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colInstalledPrinters = objWMIService.ExecQuery ("Select * from Win32_Printer")
 
For Each objPrinter in colInstalledPrinters
	Wscript.Echo "Name: " & objPrinter.Name & vbCrLf & "Default? : " & objPrinter.Default
Next
j'arrive aussi a récupérer l'username:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Set WshNet = CreateObject("WScript.Network")
	User = WshNet.Username
Wscript.Echo User

et à écrire dans un fichier:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 Set FSys = CreateObject("Scripting.FileSystemObject")
 Set MonFic = FSys.CreateTextFile("c:\fichier.txt")
 
 With MonFic 'Pour écrire dans le fichier texte
 .writeLine "toto" 'Mettre write pour ne pas sauter à la ligne
 .writeLine "deuxième ligne"
 .writeLine "troisième ligne, etc..."
 End With
 Msg = "Écriture réussie dans fichier.txt"
 MsgBox(Msg)
Maintenant j'ai plusieurs pb:
- il me faut rassembler le tout, mais les boucles et moi...ca fait beaucoup
- je pense que l'écriture écrasera a chq fois le fichier et son contenu
- il y a risque de doublons

quelqu'un a t il une suggestion et pourrait m'aider?

Voici à peu près le résultat que j'aimerai obtenir:
- imprimante1: user1, user2, user3
-imprimante2: user2
-imprimante3: user2, user3

Merci