IEのmime typeの判定

IEに限らずブラウザを使っていると、ダウンロードしたいものなのに、ブラウザで開いてしまうことが起こる。ここではmp3を開いたときに、quicktimeのアドオンが起動する場合にこれをダウンロードするように直す方法を調べてみる。

一般的にはファイルの種類を知りたいとき、拡張子というのがあるが、Mine Typeはこの拡張子をもっと一般的にしたものだと思う。サーバーはブラウザからの要求に対して、Content-typeヘッダを返す。たとえばhtmlデータを返す場合は以下のようなヘッダを返す。

Content-type: text/html

サーバがどのようなContent-typeを返すかは、通常拡張子によって決まると思われる。apacheなどの場合はmod-mimeのAddTypeなどを使っていろいろカスタマイズできるのだろう。またPerlなどのCGIの場合には自分でContent-typeを指定することもできる。

IEがこのContent-typeを受け取ったときどう処理されるかはここなどに書いてあり、ここにも要約があるが、複雑みたいなので、ここでは勝手に解釈して作業を続行する。

問題のmp3の時、サーバはContent-typeとして、audio/mpegを返していた。これを調べるにはレスポンスヘッダを見れるダウンロードマネージャを使ったり、プロキシで見てみたりいろいろやり方はあるが、ここではスルー。

このaudio/mpegの時、IEがどう動くかだが多分レジストリーの
HKEY_CLASSES_ROOT\MIME\Database\Content Type\audio/mpeg
を見ているのだろう。で、このキーの中のCLSIDで指定されているGUIDのコンポーネントを起動しているものと思われる。ここでは
{4063BE15-3B08-470D-A0D5-B37161CFFD69}
になっていた。これ以上はCOMの話になると思うので詳しくは書かないが、ここからレジストリキー

HKEY_CLASSES_ROOT\CLSID\{4063BE15-3B08-470D-A0D5-B37161CFFD69}
をみて動作しているものと思われる。

そこでレジストリーから
HKEY_CLASSES_ROOT\CLSID\{4063BE15-3B08-470D-A0D5-B37161CFFD69}
を削除してみたら、mp3がquicktimeによるアドオン再生から、ダウンロードに変わって希望の動作ができたので終了。

ちなみにfirefoxの場合は、オプションのプログラムで設定できるものと思われる。
firefox-contenttype

「めにゅ」を使ってYoutubeの高画質表示に切り替えるメニューをIEに追加する

できたものは一番下にあります。

ここへいってめにゅをダウンロードして実行する。

main

「プロジェクトの作成」をクリックして適当な名前を入力する。ここでは「Youtube高画質」とした。
proj

「コマンド作成」をクリックして、以下のようにコマンドを追加する。
commnad

作成されたコマンドをダブルクリックして編集する。デフォルトのものをすべて消して、以下のように入力する。

「テスト」をクリックして、コマンドをシステムに登録し、IEからYoutubeの動画ページを表示し、右クリックして、「Youtube高画質」をクリックして実験する。

実験が成功したら、ウインドウ左上のアイコンをクリックして、配布ファイルを作成し、*.infを右クリックしてから、インストールできる。

出来上がったもの。infファイルを右クリックしてインストールする。

Windows 98 でIEが動かない

Windows98を新規にインストールして、IEを起動させると以下のようなダイアログになってIEが起動してくれない。

kkk

これはダイアルアップを想定してるので出てくるのだと思うが、今はほとんどLAN接続なので、これは必要ない。

IEを動くようにする

以下のようにすると直る。
コントロールパネルからインターネットオプションを選択する。
接続タブ接続ボタンをクリックする。
・あとは選択項目からLANを選択する。

Firefox 2を使う

Firefox 3はWindows98では動かないが、2なら動く。これを使えばインターネットには接続できるし、古いIEよりも安全で新しいページにも対応している。ここからダウンロードできる。

IEでときどき表示される’痴’と言う文字

ISO-8891-1の文字番号0x92のアポストロフィーを使っていて、それがshift-jisと解釈されてしまうと起こる。シングルクウォート(0x27)を使えばこのようなことは起こらない。

charset=iso-8859-1としていればアポストロフィを使っても正しく表示されるが、指定がない場合ブラウザのデフォルトが優先され日本製のIEだとshift-jisと解釈され次の一文字”S”と一緒になって”痴”などと表示されてしまう。

見る側がこれを正しく表示するには「エンコード」メニューから「西ヨーロッパ言語(ISO)」を選ぶ。

アポストロフィーの次にくる文字とそれが文字化けした場合表示される一覧:
a : 誕
b : 鍛
c : 団
d : 壇
e : 弾
f : 断
g : 暖
h : 檀
i : 段
j : 男
k : 談
l : 値
m : 知
n : 地
o : 弛
p : 恥
q : 智
r : 池
s : 痴
t : 稚
u : 置
v : 致
w : 蜘
x : 遅
y : 馳
z : 築