hello,
bon j'ai trouvé une ruse pour éviter ce problème de script signé. On met toutes les commandes en une seule ligne dans une chaîne en séparant les commandes par un point virgule
.
voici donc la nouvelle procédure :
1 2 3 4 5 6 7 8 9 10 11 12 13
| PROCEDURE ExecuteUpdateLocationPrinter(nomServeurImprimante est une chaîne, nomImprimante est une chaîne, nouvelEmplacement est une chaîne)
maCommandePowershell est une chaîne = "$printer = Get-WmiObject win32_printer -ComputerName " + nomServeurImprimante +
"| Where-Object {$_.name -eq '" + nomImprimante + "'};" +
"$printer.Location = '" + nouvelEmplacement + "';" +
"$printer.put()"
Trace(maCommandePowershell)
QUAND EXCEPTION DANS
SI LanceAppli("C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -command " + maCommandePowershell) = Faux ALORS
Erreur(ErreurInfo())
FIN
FAIRE
ExceptionPropage()
FIN |
Attention j'ai remplacé les guillemets dans les commandes par des apostrophes.
Voici un exemple d'utilisation pour modifier l'emplacement du Fax de son ordinateur :
ExecuteUpdateLocationPrinter("localhost","Fax","EmplacementNouveau")
et voici le résultat :

Ami calmant, J.P
Partager