アプリケーションを再起動するバッチファイル

※前回の「東京都の緊急事態宣言は5月31日の解除も難しそう」に追記しました

親指シフトエミュレータの「やまぶきR」(http://yamakey.seesaa.net/)が最近たびたび動作しなくなってしまう。強制終了したわけではなく、本人はちゃんと動作しているつもりのようだ。こうなるといったん終了させて起動し直すことになる。

  1. 通知領域の∧をクリック
  2. やまぶきRのアイコンを右クリックし「終了」を選択
  3. [Win]+[R]で「ファイル名を指定して実行」を表示させる
  4. 「shell:startup」と入力し[Enter]
  5. エクスプローラーが起動し「スタートアップ」フォルダが表示される
  6. やまぶきRのアイコンをダブルクリック

たまにしかしないならこれでもいいが、一日に何度もこれはやってられない。「やまぶきR」をスタートメニューに登録して、終了させる→起動させるという2手順になったが、もっと手軽にアプリケーションを再起動させたい。

いろいろ調べて、こういうバッチファイルを作った。

taskkill /IM yamabuki_r.exe /T
timeout 1 /nobreak >nul
start "" C:\~\yamabuki_r.exe

それぞれのコマンドについては検索してください。「timeout」は「やまぶきR」が終了するのを待っている。「C:\~\yamabuki_r.exe」は「yamabuki_r.exe」へのフルパス。

1行目の「yamabuki_r.exe」と3行目の「C:\~\yamabuki_r.exe」は終了/起動させたい実行ファイルに置き換える。またバッチファイルを実行ファイルと同じ場所に置けば、3行目はフルパスでなくてもよい。

このバッチファイルを簡単に実行させるためにショートカットキーを登録しようと思う。バッチファイルのショートカットを作って「ショートカット」タブの「ショートカットキー」欄をマウスでクリックしたら、このショートカットを実行させるショートカットキーを押すと登録される。ほかのアプリケーションのショートカットキーとかぶらないように気をつけて。

f:id:Imamura:20210515104701p:plain

もしショートカットキーの登録がうまくいかなかったら、スタートメニューに登録する。バッチファイルを右クリックしても「スタート画面にピン止め」の項目は出てこない。そこでショートカットをスタートメニューに置くことにした。

「ファイル名を指定して実行」に「shell:Programs」を入力すると、エクスプローラーでスタートメニューの「プログラム」フォルダが開く。ここにバッチファイルのショートカットを入れるとスタートメニュー内に表示されるようになる。

スタートメニューに登録する方法はほかに、ショートカットのプロパティで「ショートカット」タブの「リンク先」の冒頭に「cmd /c 」(「/c」の右には半角スペース)を追加するというやり方もあるそうだ。

ということで、「やまぶきR」が動作しなくなったらショートカットキーを押すか、スタートメニューを開いてバッチファイルのアイコンをクリックすればよくなった。

しかしそもそもこういうバッチファイルを使わなくてもすむ状態にしたい。なぜ「やまぶきR」が動作しなくなるのか、原因はわからない。システムの負荷が上がるとよく止まる気がするものの、「こうなると必ず止まる」を見つけられないでいる。

「やまぶきR」は何年もアップデートされていないから、最近のWindowsと相性が悪くなってきたのだろうか。「やまぶきR」は同時打鍵の判別アルゴリズムが自分に合っているらしくミスタイプが少なくて気に入っているが、ほかの親指シフトエミュレータを試してみるべきかもしれない。

関連記事