ショートカットをデスクトップやカレントフォルダに作成します。


【実行画面】


 これは、Pyxisなどのファイラーにショートカットを作るための機能を 追加するためのスクリプトです。

 実は、ほとんどWindows98の"C:\WINDOWS\SAMPLES\WSH\SHORTCUT.VBS" そのままです。

ソースは、以下の通り
******* shortc.vbs *******

'◇ショートカットをデスクトップまたはカレントフォルダに作る。◇


'ArgumentsObject(パラメータとしてファイルのパスを受け取る)
Set args = Wscript.Arguments

'ファイルを指定しなかった場合はメッセージを表示して終了
if args.Count = 0 then
    nonfile = MsgBox("ファイルが指定されませでした。",48)
    WScript.Quit
end if


res = MsgBox("ショートカットはデスクトップに作りますか。" & vbCR &_
        vbCR & "デスクトップに作る場合は「はい」、" & vbCR &_
        "現在の場所に作る場合は「いいえ」",35_
        ,"ショートカットを作ります")

if res = 2 then
    '「キャンセル」はなにもしない

else
    'ショートカット作成処理
    call MakeSCut()
end if


'************************** MakeSCut ******************************
sub MakeSCut()

Dim WSHShell
Set WSHShell = WScript.CreateObject("WScript.Shell")


Dim MyShortcut, MyDesktop, DesktopPath
Dim mylnk, filename, report

' Read desktop path using WshSpecialFolders object
DesktopPath = WSHShell.SpecialFolders("Desktop")

'パラメータからファイル名を取得
Set objFS = CreateObject("Scripting.FileSystemObject")
filename = objFS.GetFileName(args.Item(0))


if res = 6 then
    '「はい」の場合
    mylnk = DesktopPath & "\" & filename
    report= filename & "のショートカットをデスクトップに作りました"

else
    '「いいえ」の場合
    mylnk = args.Item(0)
    report= filename & "のショートカットを現在のフォルダにに作りました"

end if


' Create a shortcut object
Set MyShortcut = WSHShell.CreateShortcut(mylnk &_
                    "へのショートカット.lnk")

' Set shortcut object properties and save it
MyShortcut.TargetPath =_
        WSHShell.ExpandEnvironmentStrings(args.Item(0))
MyShortcut.WorkingDirectory =_
        WSHShell.ExpandEnvironmentStrings(objFS.GetParentFolderName(args.Item(0)))
MyShortcut.WindowStyle = 4
MyShortcut.IconLocation =_
        WSHShell.ExpandEnvironmentStrings(args.Item(0) & ", 0")
MyShortcut.Save

'終了のメッセージ
resOK = Msgbox(report,64)

end sub
'********************** end of MakeSCut ***************************


 Pyxisでのランチャー設定例は
(下の例では、"shortc.vbs"は、"c:\Script"内にあります。)



 Pyxis(シェアウェア)の入手先は、 ベクター内または、 〜Tom〜さんのページにて



戻る