Bonjour,

Pour exécuter une application à distance depuis une machine S1 sur une machine S2, je crée les scripts suivants :

- Sur S2,
- un script VBS Launch.vbs qui contient notamment la ligne suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Set myapp = CreateObject("Atoll.Application")
- un script BATCH Launch.bat qui appelle le VBS en lui passant des paramètres :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
"E:\livraison\Launch.vbs" "arg1" "arg2"
- Sur S1, un script PowerShell Launch.ps1 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
$sessionRemote = New-PSSession –Computer $srvNameS2
Invoke-Command -Session $sessionRemote -ScriptBlock { E:\Livraison\Launch.bat }
Ce script Powershell est exécuté avec la version 2 (par défaut sur Windows Server 2008), en prenant soin de lui permettre auparavant l'exécution à distance :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
powershell.exe -command "&{Set-ExecutionPolicy ByPass}"
powershell.exe E:\livraison\Launch.ps1
Résultats :
1) En lançant le script Launch.bat depuis S2, le VBS s'exécute sans erreur.
2) En lançant le script Launch.ps1 sur S1, le BATCH de S2 est bien exécuté, celui-ci lance le Launch.vbs, mais ce dernier renvoie une erreur 429 juste après la ligne indiquée ("ActiveX Component Can't Create Object").

Quelqu'un aurait-il déjà rencontré cette problématique ?
Mon objet Atoll.Application nécessite-t-il pour être reconnu de charger explicitement dans le script VBS une dll qui le déclare ? Si oui comment ?