🛼

ショートカットリンク作成を自動化する

2024/04/03に公開

ショートカットリンクの作成を自動化したい

外部リンクは「.url」、フォルダのショートカットは「.lnk」です。
外部リンクはすぐ出てくるが、フォルダショートカットは調べてもなかなか出てこなかった。
mklinkで、と言われても使用者が管理者権限がなかったらそうもいかない。

環境はWindows11です。

先に結論

(.lnk)Power Shell使いました。

# おまじない
$WScriptShell = New-Object -ComObject WScript.Shell
# 設定
$WScriptShell = $WScriptShell.CreateShortcut("****.lnk")
$shortcut.TargetPath = "****(フォルダでもファイルでも)"
$shortcut.Save()
exit

ついでに(.url)はDOSコマンドで以下。
1行ずつやると上手く出来ない気がするのでbat化した方が良い?

echo [InternetShorcut]> google.url
echo URL="https://www.google.co.jp/">> google.url

その他

初めは「ファイル処理はDOSコマンド(コマンドプロンプト)でbatかな」と思ったり
VBA・VBSで検討していて、なかなかいいものに出会えなかった。
mklinkは管理者権限が必要だし、LinuxではInでできるようだけどWindowsである。
Power Automate Desktopで使用したかったのでDOSかPowerShellと思い
PowerShellで解決したのでメモ。

Discussion