今回は、Windows 10, Windows 11 に対応した自作ツール「ファイル名を指定して実行の履歴設定」を紹介します。
「ファイル名を指定して実行の履歴設定」には、次の 3つの機能があります。
- 「ファイル名を指定して実行」の履歴を残す
- 「ファイル名を指定して実行」の履歴を残さない
- 「ファイル名を指定して実行」に任意のコマンドを表示する
※「ファイル名を指定して実行の履歴設定」は、Windows 10, Windows 11、各 OS の 64ビットのみに対応しています。(管理者権限は必要ありません)
Win10/Win11 ファイル名を指定して実行の履歴が消えてしまう の方法で履歴が残らない場合や履歴を削除して必要なコマンドだけを表示したい場合などにご利用ください。
2023/08/02:
「ファイル名を指定して実行の履歴設定」の仕組みを追記しました。
「ファイル名を指定して実行の履歴設定」の使用方法
ダウンロードした「RunHistorySettings.zip」を解凍し、中にある「ファイル名を指定して実行の履歴設定.exe」を実行します。
ボタンは 4つあり、各ボタンの機能は次の通りです。
ファイル名を指定して実行の履歴を残す
「ファイル名を指定して実行」に履歴を残すように設定します。
「ファイル名を指定して実行の履歴を残す」ボタンをクリックすると、「設定完了!」と表示されます。
次回から「ファイル名を指定して実行」で実行したコマンドが履歴に残るようになります。
ファイル名を指定して実行の履歴を残さない
「ファイル名を指定して実行」の履歴を削除し、履歴を残さないように設定します。
「ファイル名を指定して実行の履歴を残さない」ボタンをクリックすると、確認ダイアログが表示されますので、「はい」か「いいえ」をクリックします。
「はい」をクリックすると、履歴が削除され、「設定完了!」と表示されます。
ファイル名を指定して実行に任意のコマンドを表示
「ファイル名を指定して実行に任意のコマンドを表示」には、1~10 までのコマンドを入力することができます。
現在の設定を読み込む
「現在の設定を読み込む」ボタンをクリックすると、インプットボックスに現在の履歴が表示されます。
※「入力をすべて削除」ボタンをクリックすると、インプットボックスに入力されたコマンドをすべて削除します。
設定する
「設定する」ボタンをクリックすると、項目が入力されていれば確認ダイアログが表示されますので、「はい」か「いいえ」をクリックします。
「はい」をクリックすると、「設定完了!」と表示されます。
デフォルトで「設置後に「ファイル名を指定して実行」を開く」にチェックが入っているので、OK をクリックすると「ファイル名を指定して実行」が開きます。
※既に「ファイル名を指定して実行」を開いている場合は、チェックが入っていなくても一度閉じた後に再度開きます。
何も入力せずに「設定する」ボタンをクリックすると、エラーが表示されます。
ファイル名を指定して実行を開く
右下のアイコンをクリックすると、「ファイル名を指定して実行」を開くことができます。
「ファイル名を指定して実行の履歴設定」の仕組み
「ファイル名を指定して実行の履歴設定」の仕組みはレジストリの編集です。
すべて半角英数字で入力します。
レジストリの操作を間違えるとシステムが起動できなくなるなど不具合が起きる可能性があります。事前にシステムの復元などでバックアップを取り、自己責任で行うようお願いします。
- システムの復元ポイント作成方法及び復元方法
- レジストリエディタの開き方及びバックアップ方法
- Win10 レジストリの予備知識|概念、開き方、レジストリの内部構成
※Windows 11 のレジストリも基本は同じです。
「ファイル名を指定して実行」の履歴を残す、残さない
ファイル名を指定して実行の履歴を残すための設定をレジストリで行うには、次のキーを開きます。
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced
「Advanced」キーを選択した状態で右側を見ると、「Start_TrackProgs」という REG_DOWRD 値があります。
「Start_TrackProgs」の値のデータを「1」にすると「ファイル名を指定して実行」の履歴を残す設定となります。
「Start_TrackProgs」の値のデータを「0」にすると「ファイル名を指定して実行」の履歴を残さない設定となります。
ファイル名を指定して実行の履歴を残すための設定 で履歴を残さない設定にすると、「ファイル名を指定して実行」の履歴に関するキーが削除され、「ファイル名を指定して実行」には何も表示されなくなります。
「ファイル名を指定して実行」の履歴の場所と各値の意味
「ファイル名を指定して実行」の履歴をレジストリで確認するには、次のキーを開きます。
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU
画像を見ると、「a」と「b」と「MRUList」という文字列値(REG_SZ)がありますね。
アルファベットの文字列値
このアルファベットの文字列値の値のデータが、「ファイル名を指定して実行」で実行したコマンドの履歴です。
「ファイル名を指定して実行」でコマンドが正常に実行されると履歴として書き込まれます。
コマンドを実行するたびにアルファベットの「a」から順番に書き込まれていきます。
このアルファベットの文字列値に設定されているコマンドを見るとわかるように、最後に「¥1」が付いていますね。
例えば「regedit¥1」の「¥1」を削除した状態で、もう一度「ファイル名を指定して実行」で「regedit」を実行すると、追加で「regedit¥1」が登録されます。
「ファイル名を指定して実行」を見ると「regedit」が 2つありますね。
ですので、手動で編集する場合は重複しないように必ず最後に「¥1」を付けましょう。
文字列値「MRUList」
文字列値の「MRUList」の値のデータを見ると、アルファベットが並んでいますね。
画像では「MRUList」の値のデータは「cba」となっています。
この値のデータの意味は、「ファイル名を指定して実行」に表示されるコマンドの順番です。
「ファイル名を指定して実行」を開いてコマンドを見てみると順番通り並んでいるのが確認できます。
c = gpedit.msc
b = msconfig
a = regedit
この順番は、最後に実行したコマンドが先頭に来るように「MRUList」の値のデータが自動で書き換えられます。
「ファイル名を指定して実行の履歴設定」は、これらのレジストリを編集をせずに、簡単に設定することができるようになっています。
「ファイル名を指定して実行の履歴設定」のダウンロード
ファイル名を指定して実行の履歴設定(Vector)
コメント(降順)