i'm facing a problem, my powershell script have a very strange comportement.

There is a little piece of a big script : 

```
Write-Host "Installation in progress..." 
Invoke-Command -Session $session -ThrottleLimit 64 -ScriptBlock {.\XenDesktopServerSetup.exe /QUIET /CONFIGURE_FIREWALL /components $using:componentparam /nosql }
Write-Host "Installation completed" 

```

Sometimes even if the execution of `XenDesktopServerSetup.exe` is finished my script doesn't pass to the next command `Write-Host "Installation completed"` 
I need to click somewhere in the shell or break the script with CTRL+C to see the end of my script;

I tried to change `ThrottleLimit`, but i doesn't have effect.

I'm using Powershell V4.0.

There is only one server in $Session.

**EDIT :**
I tried this command **directly on my server**, i opened a PS Shell and executed : 

```
.\XenDesktopServerSetup.exe /QUIET /CONFIGURE_FIREWALL /components CONTROLLER /nosql 

```

**I had the same problem !** 

But when i tried the same command in Cmd.exe, it works perfectly and everytime ! 

How can i execute this command in Cmd.exe ? I want something like this : 

```
Write-Host "Installation in progress..." 
Invoke-Command -Session $session -ThrottleLimit 64 -ScriptBlock {Cmd.exe .\XenDesktopServerSetup.exe /QUIET /CONFIGURE_FIREWALL /components $using:componentparam /nosql }
Write-Host "Installation completed"

```

This shows us that there is a difference between cmd.exe and powershell in how PS make the call of .exe file, but I don't understand at all why it works in cmd.exe but not in powershell

Thanks for your suggestions