2013-03-11 62 views
1

我試圖在域中的遠程桌面上創建快捷方式,我是域名管理員。如果我直接在目標機器上運行以下代碼,則可以創建快捷方式,並且能夠將我引導至目標路徑。在遠程桌面上創建快捷方式,但快捷方式是用「文件」而不是「文件夾」作爲「目標類型」創建的

$shortcutpath3 = "c:\Users\Public\Desktop\Shortcuts to Test Custom\VV 1211 -TC.lnk" 
$WshShell3 = New-Object -comObject WScript.Shell 
$Shortcut3 = $WshShell3.CreateShortcut($shortcutpath3) 
$Shortcut3.TargetPath = "\\machine\testcustom\" 
$Shortcut3.Save() 

我保存這個腳本test.ps1,對不同的mahchine folloing代碼運行。代碼結束時沒有任何錯誤/警告,並且使用我指定的propeties在目標機器上創建快捷方式。但它不能讓我到達目標地點,它實際上要求我選擇一個程序來打開該文件。我比較了這兩個快捷方式的屬性,發現破壞的快捷方式的「目標類型」是「文件」,而它是「文件夾」,這是一個很好的捷徑。

​​

任何想法如何解決這個問題?爲什麼會發生這種情況?謝謝!!!

+0

你可以通過Windows資源管理器從遠程機器打開目標路徑嗎? – 2013-03-11 07:27:16

+0

是的,我可以通過Windows資源管理器從遠程機器打開目標路徑。正如我所說的,如果我直接在目標機器上運行腳本,快捷方式可以正常工作。 – bookends 2013-03-11 07:43:57

+0

我不能repro,在我的情況下,目標類型顯示:共享(目標服務器是2008 R2)。如果從TargetPath中刪除尾部的反斜槓,它會有幫助嗎? – 2013-03-11 07:45:31

回答

1

我有同樣的問題,我用Get-Item使它工作。試試這個:

$targetPath = Get-Item("\\machine\testcustom\") 
$WshShell3 = New-Object -comObject WScript.Shell 
$Shortcut3 = $WshShell3.CreateShortcut($shortcutpath3) 
$Shortcut3.TargetPath = $targetPath.FullName 
$Shortcut3.Save() 
相關問題