関連付け

  • 既定のプログラム (User Choice)
  • ファイルタイプ (assoc / ftype)
  • プログラムから開く (OpenWithList / OpenWithProgids)
レジストリ
  • Vista 方式
    • shell / verb / command
    • OpenWithList
    • OpenWithProgids
    • User Choice
  • Windows 8 方式
    • User Choice
    • ProgID
Windows 10
  • 「既定のプログラム」 (User Choice) が優先される。
  • アプリからは登録済みの「既定のプログラム」 (User Choice) を変更できない。

ドキュメント:

新しいアプリケーションのファイルの種類を登録する方法 | Microsoft Docs [公式]

Best Practices for File Associations | Microsoft Docs [Official]

File Association Example | Microsoft Docs [Official]

参考:

最新の Windows におけるファイルの関連づけを分析する | ASCII.jp

Windows 8 方式のファイル関連付けを分析する | ASCII.jp

Windows Vista / 7 で用いられたファイル関連付けの仕組みを知る | ASCII.jp

ファイル拡張子とプログラムの関連付け | Web/DB プログラミング徹底解説

拡張子の関連付け (Windows 10) | リボンの君と SuyamaSoft

拡張子の関連付け (Windows XP) | リボンの君と SuyamaSoft

Windows 10 でのファイル拡張子関連付けのための準備作業 | サクラエディタ ヘルプ

既定のプログラム (User Choice)

ドキュメント:

Windows 10 の既定のプログラムを変更する | Windows ヘルプ [公式]

Changes to how Windows 10 handles default apps | Windows Dev Center [Official]

参考:

既定のアプリ/既定のプログラムの拡張子関連付けを設定変更する方法 | ぱそかけ

「このファイルを開く方法を選んでください。」で関連付ける | リボンの君と SuyamaSoft

ファイルのダブルクリックで起動するアプリを変更したい | 日経クロステック

Best way to get file type association in Windows 10 from command line? – Stack Overflow

Get a location of application in open with list of Windows 10 – Super User

assoc

ドキュメント:

assoc | Microsoft Docs [公式]

ftype

ドキュメント:

ftype | Microsoft Docs [公式]

レジストリ

HKEY_XXX\SOFTWARE\Classes 以下に拡張子別にプログラムの関連付けが記録される。

  • HKEY_LOCAL_MACHINE マシン全体の設定
  • HKEY_CURRENT_USER ユーザー別の設定

assoc / ftype コマンドは HKEY_LOCAL_MACHINE のみを対象とする。

ドキュメント:

File Types | Microsoft Docs [Official]

参考:

レジストリの直接編集によるファイルの拡張子と関連づけ | Glamenv-Septzen.net

最新のWindowsにおけるファイルの関連づけを分析する | ASCII.jp

ファイルタイプの登録

  • キー HKEY_CLASSES_ROOT\filetype
    • DefaultIcon 既定のアイコンを指定する。
    • shell\open\command 「開く」 (Open) で使用するコマンドラインを与える。
    • shell\edit\command 「編集」 (Edit) で使用するコマンドラインを与える。

ドキュメント:

File Types | Microsoft Docs [Official]

参考:

HKEY_CLASSES_ROOT – レジストリ 解剖記 | Programming Field

拡張子の登録

  • キー HKEY_CLASSES_ROOT\.ext
    • 既定 ファイルタイプキー、あるいは、ProgID キーを指定する。
    • OpenWithProgids 拡張子を開けるアプリを ProgID で指定する。

ドキュメント:

File Types | Microsoft Docs [Official]

参考:

HKEY_CLASSES_ROOT – レジストリ 解剖記 | Programming Field

このファイルを開く方法を選んでください

  • キー HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.ext
    • OpenWithList
    • OpenWithProgids
    • UserChoice

新規ユーザー作成時に適用されるデフォルト設定を追加/変更するには次のキー以下を編集する。

  • キー HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts

参考:

「このファイルを開く方法を選んでください」で関連付ける | リボンの君と SuyamaSoft

アイコンを変更する

  • DefaultIcon

参考:

ファイルのアイコンの変更 – Qiita

レジストリを編集して拡張子に関連付けされているアイコンを変更する | iPentec.com

ファイルのアイコンを変更する (DefaultIcon) | リボンの君と SuyamaSoft

HKEY_CLASSES_ROOT – レジストリ 解剖記 | Programming Field

How to Change the Icon for a File Type in Windows | Winhelponline

Show default extension icon instead of default – Microsoft Community

動詞 (Verb)

標準動詞
  • Open ファイルまたはフォルダを開く
  • Opennew ファイルまたはフォルダを新しいウィンドウで開く
  • Print ファイルを印刷する
  • Printto ファイルをプリンターにドラッグアンドドロップして印刷する
  • Explore エクスプローラーを開く
  • Properties プロパティを開く

ドキュメント:

ショートカットメニューハンドラーの作成 | Microsoft Learn [公式]

アプリケーション

ドキュメント:

アプリケーションの登録 | Microsoft Learn [公式]

プログラムから開く

  • OpenWithList
  • OpenWithProgids

ドキュメント:

ファイル名拡張子のファイル ハンドラを指定する | Microsoft Docs [公式]

ファイル名拡張子の動詞を登録する | Microsoft Docs [公式]

「開く」ダイアログ ボックスにアプリケーションを含める方法 | Microsoft Docs [公式]

参考:

「プログラムから開く」メニューに追加 (OpenWithList) | リボンの君と SuyamaSoft

最新の Windows におけるファイルの関連づけを分析する | ASCII.jp

Windows Vista / 7 で用いられたファイル関連付けの仕組みを知る | ASCII.jp

プログラム識別子 (ProgID)

ドキュメント:

プログラム識別子 | Microsoft Docs [公式]

バージョンに依存しない ProgID キー | Microsoft Docs [公式]

Shell Execute API

  • ShellExecute
  • ShellExecuteEx
  • ShellExecuteW

ドキュメント:

アプリケーションの起動 (ShellExecute / ShellExecuteEx) | Microsoft Learn [公式]

ShellExecuteW 関数 | Microsoft Learn [公式]

参考:

ShellExecuteEx API | Oka Laboratory

ShellExecuteEx | ちょくとのページ

CSIDL 値

ドキュメント:

CSIDL (Shlobj.h) | Microsoft Docs [公式]

MultiSelectModel

種類
  • Single 一つの選択のみをサポートする
  • Document ドキュメントを最上位ウィンドウで開くアプリケーション (最大 15 項目の選択をサポートする)
  • Player 複数の項目を選択して開くアプリケーション (最大 100 項目の選択をサポートする)

ドキュメント:

動詞選択モデルを使用する方法 | Microsoft Learn [公式]

「ペイント 3D で編集する」を削除する

参考:

右クリックメニューから「ペイント 3D で編集する」を削除する | Billion Wallet

Add or Remove Edit with Paint 3D context menu in Windows 10 – TenForums

ドキュメント

アプリケーションの登録 | Microsoft Docs [公式]

GetProgID.ps1

コード:

GetProgID.ps1 · dfinke/powershell-for-developers – GitHub

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA