今時2GBの壁の前に悶絶する

暇だったので、三国志13PKの音声ファイルを抜き出すVBScriptを書いたのだが、実際に処理してみるとファイルの途中でエラーが発生してしまった。



リファレンスを見てみると、




ADODB.StreamのPositionに渡すのはLongであるらしい。


Long型は、VBScriptでは符号付32bit整数なので、Positionの値は2G-1が上限ということになる。


よくよく調べてみると、CopyToメソッドのサイズはIntegerであるとも書いてある。




いくらなんでもこれは間違いだと思うが。


とは言うものの、ファイルの扱いをWin32APIを使った処理に書き換えればできなくもないのだろうが、そこまでしてVBScriptにこだわる意味もないので、今回はあきらめることにしました。




コメント

このブログの人気の投稿

メモリの解放にEmpty.exeは必要ありません。

KOEI G1L形式のBGMファイルの変換

そういえばコーエーテクモだった