2014-11-05 94 views
0

我對這整個腳本事物都頗爲新穎,也很糟糕:所以,任何幫助將不勝感激。與文化搏鬥

基本上我試圖創建一個PowerShell腳本,在未定義數量的計算機上安裝未定義數量的打印機。計算機名稱和打印機名稱將來自本地文本文件。

這是我到目前爲止有:

$credentials = Get-Credential 
$printerlist = Get-Content c:\setup\printers.txt 
get-content c:\setup\names.txt | foreach-object {foreach($printer in $printerlist){rundll32 printui.dll PrintUIEntry /ge /c $_ /n $printer}} 

編輯:我得到的錯誤,無法每臺機器的打印機連接操作枚舉無法完成(錯誤0X0000007B)我試圖修改腳本呢我可以想出,這可能比應該少一些。

+2

您是否收到錯誤?這似乎更多的是一個聲明,而不是一個幫助某事的請求。 – TheMadTechnician 2014-11-05 00:21:46

+0

歡迎來到SO!什麼不工作,你有什麼嘗試? – J0e3gan 2014-11-05 00:21:47

+0

/ge列出給定計算機上打印機的連接。請參閱http://technet.microsoft.com/en-us/library/ee624057.aspx – 2014-11-05 09:27:40

回答

0

我不認爲你在這裏有你的foreach循環的問題。

我認爲這只是rundll32 printui.dll PrintUIEntry

使用安裝打印機:

rundll32 printui.dll,PrintUIEntry /in /c "\\COMPUTER_NAME" /n "\\PRINT_SERVER_NAME\PRINTER_NAME" 

設置默認打印機:

rundll32 printui.dll,PrintUIEntry /y /c "\\COMPUTER_NAME" /n "\\PRINT_SERVER_NAME\PRINTER_NAME" 

嘗試使用/in安裝單獨從PowerShell控制檯一臺計算機,而不你的腳本,看看你是否仍然有同樣的錯誤,可能是一個許可,但我不這麼認爲。