Pythonプログラム用のショートカットをつくる(Windows10)


きっかけ

アカネチャンカワイイヤッターがしたくて,単純なタイマーをpythonで作った.

しかし実行するのに,いちいちコマンドからcd working/directoryみたいに移動して実行するのもだるいので,デスクトップにショートカットを作りたくなった.

最終的にこういうのができた.ダブルクリックで起動できる.

やったことたち

コマンドでやっている流れをそのまま.batファイルに書く

まずAkaneTimer.txtのようにテキストファイルを作成して,コマンドでの操作をそのまま書く.

cd your/repository
python ./main.py
pause

最後にpauseを入れとくといいらしい

2019/11/26 追記:
以下のようにも書けます(@nukie_53さんコメントより)

START /D "your/repository" python ./main.py

/Dスイッチで開始ディレクトリを指定してプログラムを起動できる.
/MAXスイッチをつけると最大化して起動できる.(/MINで最小化)
その他の記法はコマンドとオプションの簡易解説 一覧表が参考になる.(膨大すぎる…)

拡張子.batに変える

今回だとAkaneTimer.batに変える

ダブルクリックしてみると…

起動した!

けどコマンドプロンプトも一緒に立ち上がる.邪魔だし,間違えてコマンドプロンプトを消すと当然プログラムも落ちてしまう.やだ

黒画面をバックグラウンドで起動

これにはVBScriptを使った.

やることは簡単で,no_cmd.txtをbatファイルと同じ階層に作って以下のように書く.

Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c AkaneTimer.bat", vbhide

vbhideで隠している.これを.vbsに変えて,ダブルクリックで実行すると,

黒画面消えた!!

ショートカットをデスクトップに置く

毎回二つもファイルいらないので,こいつらはmain.pyと同じファイルにでも入れておいて,.vbsファイルのショートカットだけデスクトップに置いた.

アイコンがださい

変えよう.

Windows10でアイコンファイルを作成する方法を参考にした.簡単にまとめると

  1. ペイントで絵を描くか持ってくる(正方形で描こう)
  2. 32x32のbmpファイルで保存
  3. 拡張子を.icoに変える
  4. ショートカットのプロパティからアイコンを選択する

これで上のショートカットができた.やったね!

最後に

とりあえず目標は達成したけど,もっといいやり方あったら教えてください…