2013-10-31 104 views
0

我嘗試在PowerShell中運行一個用附加參數啓動程序的腳本。Powershell中的冒號

$arrgs = "/sipuri:[email protected] /multiplecalls:block" 
& "BusyOnBusy.exe" $arrgs 

看來PowerShell沒有獲取參數塊。我猜是因爲: 我嘗試過{},但總是出現同樣的錯誤。

Powershell不會說這是一個錯誤。這是說它缺少塊參數的程序。

感謝您的幫助。

回答

1
$psi = New-Object Diagnostics.ProcessStartInfo 
    $psi.Arguments = "/sipuri:[email protected] /multiplecalls:block" 
    $psi.FileName = "X:\PathForProgram\BusyOnBusy.exe" 
    #$psi.UseShellExecute = $false 
    [void][Diagnostics.Process]::Start($psi) 
+0

謝謝,它的工作原理很棒! – Marlowe

0

如果你嘗試什麼:

start-process BusyOnBusy.exe "/sipuri:[email protected]","/multiplecalls:block" 
+0

不會啓動任何東西... – Marlowe

+0

仔細檢查你的語法。我用一個控制檯應用程序測試了它,它識別出兩個命令行參數,並且冒號完好無損。 –

1

結腸是驅動器的指定運營商。如果你想liternally傳遞字符串不解析器做任何interpretaion,只是單引號的字符串:

$arrgs = '/sipuri:[email protected] /multiplecalls:block' 
+0

與「 – Marlowe

+0

」的結果相同聽起來好像可執行文件不滿意傳遞的參數,但是我沒有那個.exe文件,所以我無法進一步診斷它 – mjolinor

+0

如果我直接從ps控制檯(Lync )。\。BusyOnBusy.exe/sipuri:username/multiplecalls:block' – Marlowe