ショートカットを作る PowerShell を書いてて、アイコンを指定しようと思った。
ふつうは、ico ファイルとか exe をそのまま指定するんだけろうけど、
今回は %SystemRoot%\system32\SHELL32.dll の中のアイコンを指定したかった。
ググりかたすらわからなかったけど、ひょんなことから発見。
"%SystemRoot%\system32\SHELL32.dll,-1"
とかで指定できるみたい。
これで安泰!と思いきや、欲しいアイコンの数字を指定してもアイコンが白いまま。
で、ためしに「-」を取ってみたらできた。
"%SystemRoot%\system32\SHELL32.dll,265"
アイコンの番号は、左上から右下に向かって 1 づつ増える。
数えるのが面倒だけど。
あと、「-」はつけなくてもいいみたい。
一応、54 まではつけてもうごくみたいだけど。(Windows 7 Home Premium 64-bit にて)
ちなみに、ショートカット作るには以下のコマンドを PowerShell で実行すれば OK
$wsh = New-Object -comObject WScript.Shell
$link = $wsh.CreateShortcut("C:\Users\Public\Desktop")
$link.TargetPath = "C:\Windows\notepad.exe"
$link.WorkingDirectory = "C:\Windows\"
$link.IconLocation = "C:\Windows\notepad.exe"
$link.Save()
ショートカットの引数は Save() を呼び出す前に以下の値を指定すれば OK
$link.Arguments = "なんちゃら"
0 件のコメント:
コメントを投稿