--- Easy FileType Manager version 1.06.1 --- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 概要  このプログラムは、レジストリを操作して、ファイルの関連付けを 編集します。この編集は、Windows の設定である「フォルダ オプション」 (OS により若干ニュアンス・表記が違います) の中の「ファイル タイプ」 よりも編集できる内容が多く、より柔軟な設定が可能です。  Version 1.04 からは、シェル拡張 (ShellEx) の編集も可能になりました。 ※ 現在は「一覧のエクスポート」は使用できません。次期バージョンで   使用できるようにするつもりです。 ※ このプログラムは細かい設定が可能なため、むやみに編集・削除を   行わないように注意してください。また、あらかじめレジストリの   バックアップを取っておくことをおすすめします。なお、このプログラムを   むやみに使用した結果生じた損害について、作者はその損害を補償しかねます。   (バグの可能性も無いとはいえないので、バックアップは重要です。   バグがあった場合は報告していただけると幸いです。) =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 必要な環境 ・Windows 95 以降が必要です。Windows 2000 と Windows Me で  動作確認しています。 ・Windows NT/2000/XP またはそれ以降の OS では、レジストリの変更権限が  無い場合、正常に動作しない可能性があります (普通は大丈夫?)。 ・IE 5 以上が導入されている場合、アイコンを変更する際の  「アイコンのパス」ボックスがオートコンプリートに対応しています。 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= インストール・アンインストール  特別なインストール・アンインストールは要りません。不要になったら そのまま削除して構いません(設定ファイル・設定用レジストリ不使用)。 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 使い方  FTypeMan.exe を起動すると、レジストリの読み込みが始まります。 この動作は、パソコンの環境によっては数分時間がかかることもあります。 「キャンセル」で読み込みを取り消せますが、正確な動作のためには 読み込みが完了するまでお待ちください。  読み込みが完了すると、ファイルの種類の一覧が表示されます。この中で、 「ファイルの種類」はファイルの種類を表す識別子 (正確には ProgId)、 「ファイルの説明」はそのファイルを表す説明、「適用先」はそのファイルの 種類が「システム」全体に適用されるか、「現在のユーザー」のみに 適用されるかを示しています。これらの内容は「編集」で変更する ことが出来ます。  なお、拡張子に関連付けられているファイルの種類を変更するには、 「変更」ボタンをクリックしてください。(Version 1.05.2 以降)  一部のファイルの種類は「EditFlags」と呼ばれるものによって 誤って編集・削除されないようにされています。このアプリケーションは EditFlags を読み込み、ある程度安全に使用することが出来ますが、 「ファイル」メニューの「EditFlags による制御を無効にする」を 選択すると、すべてのファイルの種類に対して編集・削除ができる ようになります。但し、拡張子が存在しない(「利用不可」のアイテム) ものは削除できません。 [Version 1.06.1 以降]  すべてのファイルに対して適用されるファイルタイプ「*」、 ドライブを除くファイルとフォルダに対して適用されるファイルタイプ 「AllFilesystemObjects」、関連付けが登録されていないファイルに対して 適用されるファイルタイプ「Unknown」が編集できます。この 3 つについては ShellEx がよく利用され、例えば「*」には「アプリケーションから開く」 (OS によって表記が異なる) など多くの ShellEx データ、「AllFilesystemObjects」 には「送る」の ShellEx データ、「Unknown」には開くプログラムを選択する ダイアログを表示させるためのアクションコマンドが登録されています。  この 3 つの役割を調べたいときは、例えば編集で「アクション」に メモ帳を登録してみる(やり方は後述)などが使えます。 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 編集可能データの説明  何かのファイルの種類を選択し、「編集」をクリックすると ダイアログが表示されます。この中で、以下の項目が設定可能です。 ただし、灰色表示になっているものは編集できません。  なお、「ProgID」と「現在のユーザーのみに設定」以外の編集項目は 同じ ProgID を持つ拡張子すべてに変更内容が適用されます。これを 回避するには、「ProgID」を変更してください。  なお、拡張子に関連付けられているファイルの種類を変更するには、 「編集」ボタンでなく、「変更」ボタンをクリックしてください。 「編集」で ProgID を変更すると、古い ProgID のアクションなどが そのまま新しい ProgID に書き換わってしまいます。 ※ ここで編集した内容が必ずしも反映されるとは限りません。OS に   よっては、対応していないものもあるので注意してください。 ・アイコン   ファイルの種類を示すアイコンの横の「...」をクリックすると、   アイコンを変更することが出来ます。 ・「ProgID」   現在編集中の拡張子が使用する ProgID です。複数の拡張子が   これを利用することができ、同じ ProgID を持つ拡張子は   同じ動作をします。拡張子が「利用不可」と表示されるものは   変更できません。 ・「ファイルの説明」   このファイルの種類を説明する文字列です。 ・「現在のユーザーのみに設定」   この項目をチェックすると、現在ログインしているユーザーのみに対して   このファイルの種類を適用させます。この設定を変更すると、ProgID の   データが移動されるので、他の拡張子が同じ ProgID の場合、それが   他ユーザーで無効になる可能性があるので注意してください。   拡張子が「利用不可」と表示されるものは変更できません。 ・「アクション」   ファイルを右クリックしたときに出る「開く」などのコマンドです。   詳しくは下記をご覧ください。 ・「特殊フラグの設定 (EditFlags)」   EditFlags を設定します。一覧を開くと、それぞれ制限できる項目が   表示されます。この中で、「*」が付いているものは現在設定されている   内容を示しています。一覧から内容を選択し、「+」をクリックすると   その内容を設定、「-」をクリックすると解除できます。また、   その右のボックスで数値を直接編集することが出来ます。この数値は   16 進数 (0x が先頭文字) で表示されていますが、10 進数や 8 進数   (0 が先頭文字) で入力することも出来ます。 ・「常に拡張子を表示する (AlwaysShowExt)」   このファイルは、Windows の「フォルダ オプション」で「登録されている   ファイルの拡張子は表示しない」が設定されていても常に拡張子を表示させる   ようにします。下の設定と同時に使用することは出来ません。 ・「常に拡張子を表示しない (NeverShowExt)」   このファイルは、Windows の「フォルダ オプション」で「登録されている   ファイルの拡張子は表示しない」が設定されていなくても常に拡張子を   表示させないようにします。例としては、「ショートカット (拡張子 .lnk)」で   この設定が使われています。上の設定と同時に使用することは出来ません。 ・「ショートカット (IsShortcut)」   このファイルがショートカットであることを示します。これを設定すると、   アイコンに自動的にショートカットのマークが付きます。 ・「URL プロトコル (URL Protocol)」   この ProgID が「URL プロトコル」であることを示し、アドレスからこの   ProgID を使用してファイルを開く動作を行えるようにします。例えば、   「foo」という ProgID にこの設定をした場合、「foo:something」と   アドレスに打ち込むと、foo に割り当てられたアクションを実行します。   (このとき %1 が foo:something になります。) この例として、shell   プロトコルがあります (Windows 2000 のみ)。これは、shell:Desktop と   指定するとデスクトップ フォルダが開く、という機能があります。 ・「『開く』に警告メッセージ (NoOpen)」   アクションが存在しない時、「アプリケーションから開く」をする時に   警告メッセージを表示するようにします。チェックを入れた場合、   すぐ下のテキストボックスが編集可能になり、ここにメッセージを   いれると、そのメッセージが表示されます。空欄にした場合は既定の   メッセージが使用されます (「悪影響を及ぼす」といったメッセージ)。 ・「シェル拡張...」   ShellEx (シェル拡張) を編集します。詳しくは下記をご覧ください。 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= アクションの編集  ファイルの種類を選択し、「編集」をクリックした時に表示される ダイアログに、「アクション」があります。これは、ファイルを 右クリックしたときに出る「開く」などのコマンドを表しています。 「追加」でアクションを追加、「編集」で内容の変更、「削除」で アクションを削除できます。アクションを選択して「既定」をクリック すると、そのアクションが太字表示になります。この設定をすると、 右クリックで表示されるメニューの中で、「既定」のアクションに なったアクションが太字表示され、ファイルをダブルクリックしたときに このコマンドが実行されます。  アクションを編集する時に表示されるダイアログで、編集可能な データは以下のとおりです。 ※ EditFlags の設定で、アクションが追加・編集・削除・既定の設定が   出来ないことがあります。編集が不可の場合でも、「編集」ボタンは   有効になり、内容を見ることは出来ます。 ※ OS によっては、「Extended」が対応していない可能性もあるので   注意してください。 ・「アクション名」   このアクションの名前を示します。なお、以下のアクション名は   EditFlags によって編集不可にでき、「アクションの表示名」が   空白の場合、OS の言語に基づいて自動的に設定されます。    open opennew print printto explore find openas properties   ※ printto は右クリックのメニューには表示されません。 ・「アクションの表示名」   右クリックのメニューに表示する名前を設定します。設定しない場合、   上記に当てはまらない場合は「アクション名」がそのまま使われます。 ・「実行パス」   アクションを実行するプログラムを指定します。EXE ファイルの   「open」アクションでは「"%1" %*」となっていますが、これは   ファイル自身が実行ファイルであるため、ファイル名を示す「%1」を   実行するプログラムとしています (%* は残りの引数)。   右にある「...」でプログラムを指定できます。 ・「Shift キーを押したときに表示 (Extended)」   このアクションを、Shift キーを押しながら右クリックしたときにのみ   表示させるようにします。この例としては、「別ユーザーとして実行」(runas)   があります (Windows NT/2000 XPではチェックが入っていないので常に表示)。 ・「DDE を使う」   アクションの実行に「DDE」(Dynamic Data Exchange) を使用します。   これを利用すると、複数のプログラムを起動しなくてもアクションを   実行できるようになったりします。「DDE メッセージ」、   「アプリケーション」、「DDE アプリケーションが実行していない時」、   「トピック」の各項を設定します。 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= シェル拡張 (ShellEx) について  シェル拡張は、ファイルの関連付けだけでは足りない、プロパティページや 右クリックによるメニューなどの機能を追加する、シェル (エクスプローラ) の 拡張機能です。例えば、フォルダ内を右クリックするときに出る「新規作成」 メニューは、Directory というフォルダの種類のシェル拡張の「Background」→ 「ContextMenuHandlers」→「New」に登録されています。  シェル拡張は、下手に編集すると便利な機能が使えなくなります。ただし、 動作がおかしい時などに「一時的に無効にする」目的などで編集できます。  シェル拡張の編集ダイアログには以下の項目が表示されます。 ・「ShellEx の一覧」   登録されているシェル拡張の一覧が表示されます。この中で、「(アイテムを   追加するには、ここを選択してください)」という項目があります。   文字通りここを選択すると、その位置に項目を追加できます。   「(Background)」という項目は、フォルダの種類「Directory」にのみ   有効 (たぶん) で、「新規作成」メニューなどを登録します。   以下の 6 つの項目は、複数の項目を持つことが出来ます。    ColumnHandlers ContextMenuHandlers CopyHookHandlers    DragDropHandlers PropertySheetHandlers ExtShellFolderViews    (これらの項目は、将来追加される可能性があります。)   これらの項目では、拡張する動作を複数指定できます。それ以外の   項目は、拡張する動作を 1 つだけ指定できます。 ・「拡張の種類」   拡張したい種類を選択します。リストに登録されていないものも   入力できます。登録されているものは、リストから選択した時に   説明を表示します。なお、上の 6 つの項目は、それ自体を選択して   その種類を変更することは出来ませんが、サブ項目を選択することで   種類を変更することは可能です。 ・「拡張内容の説明」   プログラムに登録されている種類の場合、その説明を表示します。 ・「CLSID」   拡張する動作を行う COM オブジェクトの CLSID を指定します。   右の「...」というボタンをクリックすると一覧から選択できますが、   拡張の種類で指定した拡張を提供している COM オブジェクトでなければ   なりません。(そのチェックを行うには、「実行テスト」をクリックします。   下記参照。) ・「説明」   項目の表示名を編集します。なお、説明を入力しない形式は古い   IE でのシェルの場合です。該当する場合は注意してください。 ・「CLSID の説明」   CLSID が何のオブジェクトなのかを示す説明の文字列を表示します。   これは、オブジェクトによっては無い場合があります。 ・「現在の拡張子のみに設定」   現在編集している拡張子にのみシェル拡張を有効にするかどうか   指定します。場合によっては項目が 2 つ存在する場合がありますが、   その場合はこのチェックが異なっています。 ・「追加」ボタン   「(アイテムを追加するには、ここを選択してください)」を選択して   項目を追加する時にクリックします。 ・「変更」ボタン   右側の編集欄を変更した後、その変更を有効にする場合は必ずクリック   します。このボタンをクリックする前に違う項目を選択した場合、   編集中の内容は破棄されます。 ・「戻す」ボタン   項目が「削除 - ...」となっているとき、このボタンをクリックすると   その拡張を再び有効に出来ます。 ・「削除」ボタン   選択した拡張を削除します。一度クリックすると「削除 - ...」となり、   その拡張は「無効」になります。この状態のときは「戻す」で   有効に出来ます。もう一度削除ボタンをクリックすると完全に削除できます。 ・「OK」ボタン、「キャンセル」ボタン   すべての追加・変更・削除項目は、OK をしたところですべて適用されます。   誤って削除した項目がある場合、キャンセルをすれば何も起こりません。 [Version 1.06.1 以降] ・「実行テスト」ボタン   選択した項目(ExtShellFolderViews の項目を除く)に対して、入力された   データに基づいて正しく動作するかをテストします。具体的な内容としては、   定義済みの拡張の種類名である場合は、その動作を実際に行うインターフェイス、   種類によって必要な追加のインターフェイスを取得できるかをテストします。   定義済みでない拡張の種類名の場合、その名称が GUID であれば、その   GUID を IID としてインターフェイスを取得できるかテストします。   テスト結果はメッセージで表示します。失敗した場合は、失敗したステップと   エラーの詳細もあわせて表示します。   ※ ICopyHook と IExtractIcon のインターフェイスは、ANSI 版と Unicode 版     をテストします。先に Unicode 版をテストし、失敗したら ANSI 版を     テストしますが、Unicode 版で成功したら ANSI 版はテストしないので     注意してください。 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 更新履歴 Version 1.06.1 ・アプリケーション名を「File Type Manager」から「Easy FileType Manager」  に変更。 ・ShellEx の編集で「実行テスト」を出来るようにした。 ・リストの 2 番目を編集しようとすると、1 番目の編集になってしまう問題を修正。 ・リストに「*」「AllFilesystemObjects」「Unknown」の 3 つの定義済み  ファイルタイプを表示するようにした。 ・ファイルん種類の編集でアイコンをアイコンファイルから取得している場合に、  そのアイコンがプレビュー画面に表示されない問題を修正。 ・ファイルの種類の編集時に、ShellEx の IconHandler が存在する場合は  そこからアイコンを表示するようにした。(暫定処理) ・Windows XP のデザインが適用されるようにした。 Version 1.05.3 ・Windows 95/98/Me で一部のアイコンが正しく表示されない問題を修正。 Version 1.05.2 ・ProgId が設定されていない拡張子の登録を削除すると、  HKEY_CLASSES_ROOT 内の全ての登録がおかしくなる問題を修正。  (↑は重大な欠陥) ・ShellEx を編集したとき、リネームしても元のデータが残るのを修正。 ・その他細かい問題を修正。 ・ShellEx 編集時にデータの変更があった場合にのみ「変更」  ボタンを使用できるようにした。 ・拡張子について、ProgId のみの変更を可能にした。 ・メインウィンドウをリサイズ可能にした。 Version 1.04 ・シェル拡張 (ShellEx) の編集機能を追加。 ・その他細かい問題を修正。 Version 1.02 ・編集画面でアクションが無い時にリストをクリックするとエラーで  終了してしまうのを修正。 ・アイコン設定の無いファイルの種類を編集しようとすると、エラーが  起きてしまう可能性があるのを修正。 ・拡張子自体に「ProgId が割り当てられているが空白である」とき、  アクションに誤作動が起こる可能性があったのを修正。 ・「EditFlags の制御を無効」にしても、アクション編集では  無効になっていなかったのを修正。 ・アイコンのパスに、空白など、アイコンの読み込みができないものに対して、  メッセージを表示してそのまま使用できるようにした。また、空白にした際  誤作動が起こる可能性があったのを修正。 ・「お待ちください」のメッセージに読み込み数を表示。また、メイン画面に  登録されているファイルの種類の数を表示するようにした。 Version 1.00 (初期バージョン) =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= ホームページ: http://pf-j.sakura.ne.jp/ 作者: ジェット