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

レジストリを編集して、拡張子に関連付けされているアイコンを変更するための手順を紹介します。

概要

アプリケーションのアンインストールなどで、拡張子に関連付けられていたアイコンが変わってしまうことがあります。この記事では拡張子に関連付けされているアイコンを変更する手順を紹介します。

拡張子に対応するレジストリを探す

レジストリエディタを起動し、拡張子に対応するレジストリのキーを探します。
  • HKEY_CLASSES_ROOT
  • HKEY_LOCAL_MACHINE\SOFTWARE\Classes
  • HKEY_CURRENT_USER\Software\Classes
のキーの内部に拡張子名のキーがあります。
こちらの記事も参照してください。

レジストリを変更する

拡張子に対応するレジストリのサブキーを表示します。

サブキーに"DefaultIcon"がある場合

サブキーに"DefaultIcon"がある場合は(規定)の値を編集します。
値の書式は
(使用するアイコンが含まれるexe,dllファイル名), -(インデックス番号)
となります。インデックス番号は、Visual StudioでDLL,EXEファイルを開きリソースビューワーで確認できます。


Visual Stuioがない場合は、ResourceHacker でDLL,EXEファイルを開き、[IconGroup]の番号でも確認できます。

サブキーに"DefaultIcon"がない場合

サブキーに"DefaultIcon"がない場合は、"DefaultIcon"キーを作成する必要があります。作成した DefaultIcon の(規定)の値はREG_EXPAND_SZを利用するケースが多いため、レジストリエディタではなくPowerShellを利用して作成する必要があります。PowerShellを利用して既定の値を"REG_EXPLAND_SZ"で作成する手順については、「レジストリキーのデフォルト値をREG_EXPAND_SZで作成する」を参照してください。
"DefaultIcon"キーを作成後、(規定)の値を入力して設定完了です。
コード例
PowerShellのコード例です。
$path = "HKLM:\SOFTWARE\Classes\WMP11.AssocFile.AVI\DefaultIcon"

$value = "@%SystemRoot%\system32\wmploc.dll,-730"
 
New-Item $path
New-ItemProperty -Path $path -name "(default)" -Value $value -propertyType ExpandString

著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
掲載日: 2015-06-07
iPentec all rights reserverd.