2016-10-18 59 views
1
$wshshell = New-Object -ComObject WScript.Shell 
$desktop = [System.Environment]::GetFolderPath('Desktop') 
$lnk = $wshshell.CreateShortcut($sourceDir+"\ShortcutName.lnk") 
$lnk.TargetPath = "$destination" 
$lnk.Save() 

私はPowerShellのスクリプトの最後に、現在 "ShortcutName.lnk"という名前の$ sourceDirディレクトリにショートカットを作成しています。 $ item.FullNameと同じ$ testという名前を作成しようとしましたが、その名前をCreateShortcut param $ sourceDir + "\ ShortcutNameに追加することはできませんが、変数として渡す必要があります。 lnk "。Powershellの名前付けショートカット

答えて

0
$lnk = $wshshell.CreateShortcut((Join-Path $sourceDir "ShortcutName.lnk")) 

Join-Pathは必要に応じてスラッシュを追加します。

既存のファイルオブジェクトを使用したい場合は

:私はちょうど私のコードにこれを追加しました

$lnk = $wshshell.CreateShortcut((Join-Path $sourceDir ([io.path]::ChangeExtension($item.name, "lnk")))) 
+0

は、しかし、私はエラー「ショートカットのパス名が.LNKまたはする.urlで終わらなければなりません」です。これに.lnkをどのように追加するのですか? –

+0

コピー貼り付け時に "$ test"を保存していると思いますか? –

+0

@Android Magic答えを – whatever