DoIt
VBScript を使用して「Sticky Notes」または「Snipping Tool」のショートカットをタスクバーに固定しようとすると、メソッドを呼び出すときに「指定されたファイルが見つかりません」というエラー メッセージが表示されます。ただし、他のショートカット (Caclulator、メモ帳、Internet Explorer、MS Word など) を固定すると、スクリプトは問題なく動作します。
Dim Application, FileSystem, Shell, PinnedFolder, PinnedItem, Verb, Shortcut
Set Application = CreateObject("Shell.Application")
Set FileSystem = CreateObject("Scripting.FileSystemObject")
Set Shell = CreateObject("WScript.Shell")
Set Shortcut = FileSystem.GetFile(Shell.ExpandEnvironmentStrings("%ProgramData%\Microsoft\Windows\Start Menu\Programs\Accessories\Sticky Notes.lnk"))
Set PinnedFolder = Application.Namespace(Shortcut.ParentFolder.Path)
Set PinnedItem = PinnedFolder.ParseName(Shortcut.Name)
For Each Verb In PinnedItem.Verbs
If "Pin to Tas&kbar" = Verb.Name Then
Verb.DoIt
End If
Next
たとえば、パスを変更してもエラーは発生"%ProgramData%\Microsoft\Windows\Start Menu\Programs\Accessories\Calculator.lnk"
せず、電卓のショートカットがタスクバーに正常に固定されます。
これらの 2 つのショートカットでのみ失敗する理由が見つかりません。ショートカットを再作成して別の場所に移動しようとしましたが、ダブルクリックするとショートカット自体が機能することを確認しました。なぜこれが起こっているのか、または私が試したことのないアイデアを持っている人はいますか?
**編集* *
これは、2 台の追加の Windows 7 64 ビット PC と、1 台の Windows 7 32 ビット PC でテストされています。これらすべてが、Sticky Notes アプリケーションを正常にピン留めしました。Windows 7 64 ビット PC および 32 ビット PC の少なくとも 1 台は、影響を受ける PC と同じ設定、ソフトウェア、および環境を持っています。それでも問題は元の PC で解決しません。