HOME >> Tips >> Microsoft Windows

ショートカットで指定するパスを相対パスで指定する方法

2015/1/22
文書番号:20068


ショートカットファイルを作成して配布する場合、端末によって保存する場所が異なる場合があります。

例えば・・・
実行したいファイルとショートカットファイルを配布する場合に、インストーラーを使用せずにメールや共有フォルダからコピーする場合など。
今回は共有フォルダからコピーして配布したいと思ったのですが、端末によってどこに保存するかわからなかったために相対パスで指定できないか調べてみました。

【設定方法】

  1. ショートカットファイルを作成します。
    右クリックして「プロパティ」をクリックします。

    クリックで拡大

  2. 「リンク先」に「%windir%\explorer.exe "実行ファイルの相対パス"」と指定します。
    「作業フォルダー」は空白にします。

    クリックで拡大


    例1:ショートカットがあるフォルダに「bat」フォルダがあり、その中に「ip.bat」という実行ファイルがある場合の指定
    ".\bat\ip.bat"

    例2:ショートカットがあるフォルダと同じ階層に「bat」フォルダがあり(ショートカットからするとひとつ上)、その中に「ip.bat」という実行ファイルがある場合の指定
    "..\bat\ip.bat"
    ※「..\」はひとつ上の階層を指します。


    以下のサイトで他の方法による相対パスの指定方法が照会されていました。
    [Windows Script Programming]ショートカットに相対パスを指定する。(その2)

    %windir%\system32\rundll32.exe url.dll,FileProtocolHandler "相対パス"

    引数を指定する場合
    %windir%\system32\cmd.exe /c start "%cd%" "相対パス" [引数...]

    [Windows Script Programming]ショートカットに相対パスを指定する。(その3)

    %windir%\System32\mshta.exe vbscript:close(createobject("wscript.shell").run("相対パス [引数...]",1))
    ※引数の後ろにある数字で起動時の画面の大きさを指定することも可能。
    0:非表示  1:通常のウィンドウ  3:最大化  7:最小化