ファイル名がShiftJISで格納されているキャビネットファイルをcabextractで正しく展開するパッチ

投稿者: | 2012年11月29日

元々同じ内容をFacebookのタイムラインやノートに書いていたけれど、それだとFacebookに登録している人しか見られないことに気付いたのでブログを設置してそこに書きなおすことにした。

これはファイル名がShiftJISで格納されているキャビネットファイル(.cab)をcabextractで正しく展開するためのパッチです。
全てのファイル名に対してShiftJIS->UTF-8変換を行うので、ファイル名がもともとUTF-8のキャビネットに対して使用するとおかしな結果になるかもしれません(また今度適当なときにちゃんと判断するようにします)
パッチを当てたcabextractを使用したことで問題が発生しても私は一切関知しないので自己責任で使ってください。
https://www.dropbox.com/s/741mx1ofasn0h7v/cabextract-1.4-sjis-to-utf8.patch

追記: 文字コードの判定めんどくさいなと思ってたけど、create_output_nameの引数でutf8かどうか渡されているからそれを使ってファイル名がもともとutf8でも大丈夫なようにしてみた。たぶんちゃんと展開できるはずだけど手元にそういう圧縮ファイルが無いので動作未確認。
https://www.dropbox.com/s/koxl0qka65p3fo8/cabextract-1.4-sjis-to-utf8.2.patch

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です