<t>Here is yet another way without Invoke-Expression but with two variables<br/>
(command:string and parameters:array). It works fine for me. Assume<br/>
7z.exe is in the system path.<br/>
<br/>
$cmd = '7z.exe'<br/>
$prm = 'a', '-tzip', 'c:\temp\with space\test1.zip', 'C:\TEMP\with space\changelog'<br/>
<br/>
& $cmd $prm<br/>
<br/>
```<br/><br/>
If the command is known (7z.exe) and only parameters are variable then this will do<br/>
<br/>$prm = 'a', '-tzip', 'c:\temp\with space\test1.zip', 'C:\TEMP\with space\changelog'<br/>
<br/>
& 7z.exe $prm<br/>
<br/>
<br/>
<br/>
BTW, `Invoke-Expression` with one parameter works for me, too, e.g. this works<br/>
<br/>
`$cmd = '& 7z.exe a -tzip "c:\temp\with space\test2.zip" "C:\TEMP\with space\changelog"'<br/>
<br/>
Invoke-Expression $cmd<br/>
<br/><br/>
<br/>
P.S. I usually prefer the way with a parameter array because it is easier to<br/>
compose programmatically than to build an expression for Invoke-Expression.</t>