Powershell не расширяет переменную, поскольку не обрабатывает эту часть вашей команды как строку.
Вы можете использовать Start-Process
с ArgumentList
, чтобы это произошло:
Start-Process "C:\Program Files (x86)\Foolish IT\CryptoPrevent\cryptoprevent.exe" -ArgumentList "/apply","/appdata","/silent","/a=C:\Users\$username\AppData\Roaming\Spotify\spotify.exe,/a=C:\Users\$username\AppData\Roaming\Spotify\spwebinst0.exe,/a=C:\Users\$username\AppData\Roaming\Spotify\spotifylauncher.exe"
Я бы использовал $env:appdata
напрямую, так как это папка C:\Users\USER\AppData\Roaming
.
$CryptoPreventPath = "C:\Program Files (x86)\Foolish IT\CryptoPrevent\cryptoprevent.exe"
$args = @(
"/apply",
"/appdata",
"/silent",
"/a=$env:appdata\Spotify\spotify.exe,/a=$env:appdata\Spotify\spwebinst0.exe,/a=$env:appdata\Spotify\spotifylauncher.exe"
)
Start-Process $CryptoPreventPath -ArgumentList $args