各種メッセージ


MSI2FILEを使用中に表示される各種メッセージについて説明します。

■無事に抽出が完了した場合

完了

このメッセージは、成功時のものです。

■Msiファイルから抽出できなかった場合

抽出失敗

おそらく、Msiファイルに不具合があります。もしも、このファイルを使っての通常のインストールはできるのに、MSI2FILEでは抽出できない場合は、お知らせ下さい。対応できるようならば対応します。

■保存先に問題がある場合

保存先に問題

このメッセージを見たらまず、書き込みできない場所を指定していないかを確認してください。

など、色々な原因がありえます。また、前述のように、パスが長すぎるフォルダを指定するとエラーメッセージを出すようにしています。

c:\寿限無寿限無五劫の擦り切れ海砂利水魚の水行末雲来末風来末食う寝る処に住む処やぶら小路の藪柑子パイポパイポパイポのシューリンガンシューリンガンのグーリンダイグーリンダイのポンポコピーのポンポコナーの長久命の長助

などというようなパスを持つフォルダは、避けてください。

■内包型のファイルを含んでいないMsiファイルを指定した場合

内包型でないとき

これは比較的よく遭遇するメッセージだと思います。Msiファイルの中には、自分自身にはインストール時に展開するファイルを含まずに、外部に存在するキャビネットファイルにリンクしてそれを展開する形式を採るものがあります。

この種のものは、その外部キャビネットファイルをエクスプローラなどで探してみてください。たいていの場合はMsiファイルと同じフォルダ内か、直下のサブフォルダ内で見つかるはずです。それを普通のアーカイバで解凍してください。【MSI2FILE】で扱う必要は無いものです。

■リネーム情報が欠如していた場合

【MSI2FILE】は、対象となるMsiファイルの中からキャビネットファイルを抽出し、それを解凍し、そのうえ更に解凍したファイルを本来のファイル名にリネームする働きをします。このリネーム情報は、Msiファイルの中に含まれています。

【MSI2FILE】が、このリネーム情報を探したが見つからなかった時に、このメッセージが出ます。

リネーム情報が無いということは、リネームする必要がないと考えられるので、抽出したファイル名は正しい場合がほとんどだと思いますが、一応このメッセージを出しています。

少なくても、このメッセージが出た時は、抽出したファイルの名前が変だということはあっても、バイナリデータとしては正常なファイルのはずです。

■抽出中の進捗情報表示用ダイアログ

進捗情報表示用ダイアログ

このメッセージは、ほぼすべての場合で、途中経過を示すために表示されます。小さなサイズのMsiファイルが対象だったり、PCの処理能力が高い場合は、一瞬で消えてしまって見えないかもしれませんが…。

逆に、巨大なMsiファイルを扱う時や、PCの能力が低いときは、一連の処理に時間がかなり掛かる場合があります。このとき、上図の赤く囲ったボタンを押すと、強制的に作業を途中でやめてしまうことができます。

しかし、できれば途中でやめないで、最後まで待っていただけたらと思います。(なお強制終了しても、マルチスレッドの関係で、展開中のキャビネットファイルがあると、そのファイルの扱いが終わるまで展開用のダイアログが、ボタンを押した後も表示され続けます。)

一例として Virtual PC 2004の中で、MSI2FILEの抽出時間を測定してみました。

 ・対象Msiファイル
サイズが25MBの【.NET FrameWork】インストール用のもの
 ・CPU
733MHzのCeleron
 ・ホストOS
Windows XP
 ・ホストのメモリ
512MB
 ・ゲストOS
Windows 98SE
 ・仮想PCに割り当てたメモリ
128MB

という現在の水準ではかなり非力と言える環境で、90秒ほどの所要時間でした。それほど待てない時間でもないと思うので、できれば最後まで待ってやってください。

■強制終了した場合

中止メッセージ

上記の赤く囲ったボタンを押して強制中断した場合には、最後にこのメッセージが出ます。

画面に書いてある通りに、ゴミが抽出先フォルダ内に残ります。エクスプローラなどを使って御自分で消してください。気を取り直して、【MSI2FILE】で再抽出にチャレンジする場合は、ゴミファイルは【MSI2FILE】が消すので、あえて消す必要はありません。

■extrac32.exe が存在しない場合

extrac32が無い

これは、普通の場合には出ないエラーです。

Windows98以降のWindowsには、キャビネットファイル(拡張子cabの圧縮ファイル)を解凍する能力を持つ【extrac32.exe】という実行ファイルを標準でシステムに持っています。【MSI2FILE】は、この機能を利用しています。

過去において、ユーザーが意図的にこのファイルを消したか、あるいは、あまり使わないファイルを削除してWindowsを軽量化するユーティリティーソフトなどでこのファイルを消したかして、とにかく現時点では、【extrac32.exe】が存在しない場合に、このエラーが出ます。

このエラーが出たら、残念ながら、このままの状態では【MSI2FILE】は使えません。【extrac32.exe】をどこからか調達してシステムフォルダに入れるか、OSを再インストールするかしない限り、【MSI2FILE】は使えません。