viptop @Wiki

システムのアイコンを書き換える

最終更新:

viptop

- view
管理者のみ編集可
最終更新日:2008-12-27

アプリケーション以外のアイコンはIconSetXP窓の手Option Operator等で
レジストリを書き換えることによって基本的には変更できます。

ただ、アプリケーションに共通のダイアログや、
各種ファイラ等で見たときのアイコンは変更されません。
IconSetXP等で変更されるのはエクスプローラに関連するアイコンのみになります。

ここでは、システムのアイコンリソースを直接書き換えることによって
表示される全てのアイコンを変更する方法を説明します。

この方法は非常にデンジャラスな行為であり、
下手をするとWINDOWSが起動しなくなる恐れがあります。
カスタマイズ初心者、というよりPC初心者は手を出さない方が良いです。
くれぐれも自己責任でお願いします。

◇必要ツール

■Resouce Hacker(ResHacker)
ご存知システムリソースを書き換える定番ツール。
日本語バージョンがあるので安心。

■ResEdit(ResBuild,ResBuilder)
無くても良いが、Tempフォルダにファイルの中身が展開されるので
意外に役に立つことがある。ResHackerの代打としても。

■IconReset
アイコンリソースだけを弄りたいならこれが早い。
あるアイコンの特定のサイズだけを削除できたりする。

■ResCopy
IconResetに同梱。deviantART等で配布されてるshell32.dll等のリソースを
日本語版のdllファイルに一括コピーできる超絶便利ツール。

■各種ペイント系ソフト
ペイントソフト・レタッチソフトがあると便利。
mspaintでも十分なこともある。

■Yukari・AYukari
高機能減色・縮小ツール。
アイコンやビットマップの縮小・減色が必要なときに。

■Replacer
システムファイルを簡単に置き換えるツール。
セーフモードで起動する必要が無くなる。

■SRCpy
システムにより保護されたファイルを削除・置換できるツール。
Replacerよりやや高機能。お好みで。

■回復コンソール
いざというときのために使えるようになっておこう。
これを用いてファイルを置き換えるという方法もある。

◇ここまで読んでマンドクセ('A`)と思った人へ

システムアイコンその他もろもろを丸ごと変更してくれる
シェルパックといった便利なものが世の中にはございます。
FlyakiteOSX、VistaMizerなどがあります。
ついでにuxtheme.dllパッチを当ててVSを変更してくれるものが多いです。

ただ中にはshell32.dllの肥大化によりWindows Updateに失敗するように
なってしまうシェルパックもあるようです。一応自己責任で導入してください。

◇変更例(shell32.dllのアイコン変更)

C:\WINDOWS\system32\shell32.dllをどこか他の場所にコピー。

IconResetの画面にD&Dで放り込むと、
アイコンが山ほど表示されるのでそれをダブルクリックして変更。

ResHackerの場合はIcon Groupを選択、該当の部分を右クリックして
リソースを置き換える...を選択して変更。

まずReplacerを起動します。
ウインドウにC:\WINDOWS\system32\shell32.dllをD&Dし、Enterを押します。
次に先程書き換えたshell32.dllをD&Dし、Enterを押します。

すると確認の文章が出るのでYを押してEnterを押します。
ファイルの置き換えが行われ、
バックアップがオリジナルと同じディレクトリに拡張子.bakで作成されます。
あとは再起動すれば変更した部分が確認できるはずです。

◇アイコンの対応

IconSetXPを使えばある程度どのアイコンがどのアイコンに対応しているか分かります。
例えば%systemroot%system32/****と言う風に記述してあるはずなので
その部分を読みとりましょう。

書き換えるべきアイコンはほとんどがshell32.dllにあります。
ただ、書き換えるときに128×128のサイズのアイコンまで入れてしまうと
dllファイルの肥大化によりWindows Updateの失敗につながるようです。
具体的にはshell32.dllは9MBを超えると失敗という報告があります。
書き換えるときのアイコンサイズは48×48までに留めておきましょう。

以下、よく質問にあがるリストです。

■デスクトップフォルダのアイコン
→shell32.dllの35

■フォルダの検索結果のアイコン
→shell32.dllの46

■ダイアログ等でのフォルダアイコン
→shell32.dllの4、5

■縮小版表示時のフォルダサムネイルの背景
→shell32.dllの4、96×96の部分。

もともとこの類のアイコンを配布しているところは少ないのですが
XSpack aquaや、各種シェルパックにも入っていたりします。
LogJETに置いてあるFlat Folderはなかなか合わせやすそう。
変更方法も記載してあるので参考に。

■共通ダイアログの右上のボタンアイコン
→comctl32.dllのbitmap、124と130

共通ダイアログとはファイルを開く・名前をつけて保存等の
ウィンドウのことです。様々なアプリケーションに共通して使われています。

ビットマップリソースなのでResHackerで。
system32フォルダのものは旧バージョン(version5)、
WinSxSフォルダにあるものが新バージョン(version6)。

両方ともリソースを置き換えなければいけません。
WinSxSには何種類か入っていますが一番新しいバージョンのものを弄れば良いです。

■タスクトレイのネットワークアイコン
→netshell.dllの190~195辺り

■タスクトレイの音量アイコン
→stobject.dllの230

■ハードウェアの安全な取り外しのアイコン
→stobject.dllの210

■その他
マイコンピュータ→explorer.exeの1
マイドキュメント→mydocs.dllの100
マイピクチャ→mydocs.dllの101
フロッピードライブ→shell32.dllの7
リムーバブルドライブ→shell32.dllの8
ハードディスクドライブ→shell32.dllの9
CD-ROMドライブ→shell32.dllの12
プリンタ→shell32.dllの17
マイネットワーク→shell32.dllの18
最近使ったファイル→shell32.dllの21
ゴミ箱(full/empty)→shell32.dllの32、33
プログラム→shell32.dllの37
マイミュージック→shell32.dllの237
マイビデオ→shell32.dllの238
ActiveX キャッシュ フォルダ→occache.dll
購読のフォルダ→webcheck.dll
タスク→mstasks.dll

■クラシックログオン画面
→msgina.dll

■終了ダイアログ
→msgina.dll
■ログオフダイアログ
→shell32.dll
上記2つはこちらに少し解説があります。 WindowsXP Customize.

■uxtheme.dllパッチ
XpSkinNetにあるPatchXPをダウンロードしてきて
zipファイルの中にあるuxtheme.dllをReplacerなどで直接置き換える。
セーフモードで起動する必要がないので若干早いです。

◇自動化

shell32.dll等がWindows Updateで元に戻ってしまい、
またアイコンとか入れ替えるのが面倒というときは
コマンドラインでゴニョゴニョしてバッチファイルを作成しておくと便利。
詳しい方法はResHackerのヘルプに載ってます。

deviantARTで配布されてるshell32.dll、msgina.dll等の中身も
バッチファイル作成で一括変換できるはず。

面倒な人はResCopyを使うと早いです。
その場合は書き換え済みのdllファイルも他の場所にバックアップしておくこと。

◇すごく参考になるサイト

■Windows2000カスタマイズ備忘録
2000と書いてあるけどXPの情報も載っています。
システムファイルの書き換えについて非常に詳しいのでぜひご一読。

■WindowsXP Customize.
ResHackerを用いた一部ダイアログの書き換えなど。

記事メニュー
目安箱バナー