[vbs/wsh] removeprinterconnexion + nom réseau avec espace

removeprinterconnexion + nom réseau avec espace [vbs/wsh] - VB/VBA/VBS - Programmation

Marsh Posté le 26-05-2005 à 16:56:15    

Bonjour à tous,
je rencontre un problème assez ennuyeux dans le cadre d'un script vbs qui
déinstalle puis réajoute une imprimante réseau ( en réalité un photocopieur ).
Mon soucis est le suivant : ce fameux photocopieur apparait sur le réseau, et peut
donc être installé comme une imprimante partagée, le problème est que son nom réseau
contient un espace  :sweat:  
 
résultat, lorsque je tente de le supprimer avec un  
WshNetwork.RemovePrinterConnection "\\nom réseau de la machine\nom du partage"
j'ai une superbe erreur. bref...  
 
 

Reply

Marsh Posté le 26-05-2005 à 16:56:15   

Reply

Marsh Posté le 26-05-2005 à 17:01:31    

3 guillemets devant et 3 derrière...


---------------
Si on vous donne une info qui marche, DITES-LE!!!! ------ Si vous trouvez seul, AUSSI, votre solution peut servir à d'autres! ------ Je dois la majorité de mes connaissances à mes erreurs!
Reply

Marsh Posté le 26-05-2005 à 18:56:54    

Merci Alain, mais rien à faire. Je viens même d'essayer un for each Printer in PrinterSet et en reprenant le printer.caption qu'il me renvoit, ça passe pas non plus :D
Remarque, dans l'absolu, c'est exactement identique, donc ça devrait pas m'étonner plus que ça ^^

Reply

Marsh Posté le 26-05-2005 à 19:13:00    

envoie le code de connection au réseau


---------------
now : do nothing
Reply

Marsh Posté le 27-05-2005 à 10:33:54    

voici le code simple de chez simple :  
 

Set WshNetwork = Wscript.CreateObject("WScript.Network" )
on error resume next
WshNetwork.RemovePrinterConnection "\\XN 402\XN 402"
WshNetwork.AddWindowsPrinterConnection "\\FRSVP0002158\XN402"

 
et un petit test par la suite qui fonctionne à merveille sauf pour mon photocopieur  :heink: :

Set WshNetwork   = Wscript.CreateObject("WScript.Network" )
on error resume next  
set PrinterSet = GetObject("winmgmts:{impersonationLevel=impersonate}!//" & WshNetwork.computername).ExecQuery _
    ("SELECT * FROM Win32_Printer" )
for each Printer in PrinterSet
 WshNetwork.RemovePrinterConnection printer.caption
next

Reply

Sujets relatifs:

Leave a Replay

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