本格的にx86-64環境へ移っている最中なのです。デバイスドライバは問題ありませんでしたが、シェル拡張でちょっと手間取りました。エクスプローラは64ビットしかないので、インプロセスCOMのシェル拡張も64ビットDLLに移らないといけないわけです。IEだって32ビット版を使わせるのだから、エクスプローラだって32ビットでもいいのに、と思ってしまいます。

TortoiseSVN、FireFileCopyなどは64ビット版も用意されていましたが、mp3infpにはありませんでした。幸い、ソース公開 (LGPL)だったので、ビルドすればいいだろうと考えるわけです。こんな流れになりました。

  1. Get/SetWindowLongでエラーになるのを直す。
  2. liboggやlibvorbisの64ビット版がないことによるリンカエラーが出たので、liboggやlibvorbisのビルドに周る。
  3. mp3infp.dllのregsvr32(64ビット版)で読み込みに失敗するというので調べてみると、manifestで”x86″と指定している箇所があったので、”*”に変更

インストーラとかよく分からなかったし、regsvr32で登録できるようだったので、直接regsvr32です。32と連呼していますが64ビット版です。ハードリンクでいいから、regsvr64も用意しましょうよ……。

コントロールパネルの項目であるmp3infp.cplの64ビット版もビルドしてレジストリに買い込みましたが、まだ表示されていません。再起動しないとだめなのかなと思っています。

スポンサード リンク

この記事のカテゴリ

  • ⇒ 64ビットへ移行中