MENU

右クリックで新規ファイル(拡張子なし)を作成する方法

右クリックしたときに、ファイルを新規作成というメニューを追加して、拡張子なしのファイルを作成できるようにできますか?
ChatGPT:

はい、可能です 👍
Windows では 右クリックメニュー(コンテキストメニュー) をレジストリに登録することで「新規作成 → 拡張子なしファイル」を追加できます。

手順(例:空の拡張子なしファイルを作成する)

レジストリエディタを開く
Win + R → regedit → Enter

以下のキーを探す(新規作成メニューに関わる場所):

HKEY_CLASSES_ROOT\.空ファイル


もし存在しなければ 新規 → キー を作成してください。
(ここでは仮に .空ファイル という拡張子っぽい名前を使いますが、実際には 拡張子なし にしたいので特殊処理をします)

次に以下のキーを作成します:

HKEY_CLASSES_ROOT\.空ファイル\ShellNew


ShellNew の中に 新しい文字列値 を作り、名前を NullFile とします。値は空欄でOK。

→ これで「右クリック → 新規作成」に「空ファイル」が出るようになります。

ただし通常は拡張子が必要なので、「.txt」とかになります。拡張子なしを作りたい場合は、以下の方法を使います。

拡張子なしファイルを作る方法

Windows標準の「新規作成」では拡張子なしは作れません。
そこで次のような方法を使います。

方法1:バッチファイル経由

C:\Tools\CreateEmptyFile.bat のようなバッチを作成:

@echo off
setlocal
set "folder=%1"
cd /d "%folder%"
type nul > "新しいファイル"
endlocal


これで引数のフォルダに「新しいファイル」が作られます。

レジストリに追加:

HKEY_CLASSES_ROOT\Directory\Background\shell\新規作成(拡張子なし)\command


値:

C:\Tools\CreateEmptyFile.bat "%V"


→ フォルダの右クリック → 「新規作成(拡張子なし)」で拡張子なしのファイルができます。

方法2:PowerShellを呼び出す

レジストリの command に直接こう書く:

powershell -Command "New-Item -Path '%V\新しいファイル' -ItemType File"

まとめ

Windows標準の「新規作成」メニューは基本的に拡張子付き。

拡張子なしを作りたいなら バッチ or PowerShell を右クリックメニューに登録するのが確実。

👉 ご希望は「右クリック → 新規作成 → 拡張子なし」だけに追加したいですか?
それとも「右クリックメニューに直接(上位階層に)」追加したいですか?

あなた:
ChatGPT:

今ちょうどレジストリエディタを開いている画面ですね。拡張子の一覧が並んでいる場所(HKEY_CLASSES_ROOT 配下)です。ここを直接編集しても「拡張子なしファイル」は作れません。
Windows の「新規作成」メニューは必ず拡張子を持つ形式で管理されているため、拡張子なしは標準のやり方では登録できないんです。

解決方法(拡張子なしファイルを作る右クリックメニュー)
1. バッチファイルを作成

まず「新しいファイル」を作るためのバッチを用意します。例:

@echo off
setlocal
set "folder=%1"
cd /d "%folder%"
type nul > "新しいファイル"
endlocal


名前を CreateEmptyFile.bat として保存し、たとえば C:\Tools に置いてください。

2. レジストリに追加

今度は「フォルダの右クリック → 新規作成(拡張子なし)」を追加します。

レジストリエディタで以下へ移動:

HKEY_CLASSES_ROOT\Directory\Background\shell


shell の下に 「新規作成(拡張子なし)」 というキーを作成。

さらにその下に command というキーを作成。

command の「(既定)」の値に以下を入力:

C:\Tools\CreateEmptyFile.bat "%V"

3. 使い方

エクスプローラーでフォルダを右クリックすると「新規作成(拡張子なし)」が表示され、クリックするとそのフォルダに「新しいファイル」という拡張子なしファイルが作られます。

✅ これで「拡張子なしファイル」を作れるようになります。

質問ですが、あなたの希望は 「新規作成」サブメニューの中に入れる形 ですか?
それとも 右クリックの一番上の階層に直接出したい ですか?

あなた:
ChatGPT:

いい場所を開けていますね 👍
今「HKEY_CLASSES_ROOT\Directory」の中を見ている状態です。ここに Background\shell を追加すると、フォルダ内の余白を右クリックしたときにメニューが出せます。

手順(右クリック → 「新規作成(拡張子なし)」を追加)

レジストリエディタで以下の場所に移動します:

HKEY_CLASSES_ROOT\Directory\Background\shell


※Background がまだ無ければ、新規 → キーで作成してください。

shell の下に 「新規作成(拡張子なし)」 というキーを新規作成します。

さらにその下に command というキーを作成します。

command の「(既定)」の値に以下を入力します:

PowerShellを使う場合(簡単)

powershell -Command "New-Item -Path '%V\新しいファイル' -ItemType File"


バッチファイルを作って呼び出す場合(拡張性あり)

C:\Tools\CreateEmptyFile.bat "%V"


(※ %V は「クリックしたフォルダのパス」に展開されます)

これでできること

エクスプローラーのフォルダ内余白で右クリックすると
→「新規作成(拡張子なし)」という項目が表示されます。

クリックすると、そのフォルダに 拡張子なしの「新しいファイル」 が作成されます。

👉 確認ですが、この「新規作成」は 通常の「新規作成」サブメニューの中に入れたいですか?
それとも 右クリックのトップ階層に独立して表示したいですか?

あなた:
もっと上の方に出るようにできますか?
ChatGPT:

いいですね!スクショを見ると「新規作成(拡張子なし)」が 下の方 に出ていますね。
これはレジストリのキーの位置によって表示順が変わるためです。

上の方に表示させる方法
方法1:メニュー名の先頭に「!」や「#」を付ける

Windowsは アルファベット順/記号順 で並べるので、例えばキー名を

!新規作成(拡張子なし)


とすると、上の方に来やすくなります。
(! や _ を付けるとほぼ先頭に来ます)

方法2:Position 値を使う

HKEY_CLASSES_ROOT\Directory\Background\shell\新規作成(拡張子なし) に 文字列値 (REG_SZ) を作成して、名前を

Position


にします。

値に以下のいずれかを設定できます:

Top → メニューの一番上

Bottom → 一番下

Middle → 真ん中

例:

Position = Top


これで確実に上の方に表示されます。

方法3:サブメニュー化せず独立させる

今は「新規作成(W)」のすぐ上に入ってますが、shell 直下に置いたので独立しています。
そのままでも良いですが、Position指定でよりコントロールできます。

おすすめ

一番シンプルなのは 方法2の Position=Top を設定する方法です。

👉 どちらにしますか?「!を付けて先頭へ」か「Position=Top」で固定か。
よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

目次