周回遅れの日記

はてなダイアリーから移転

64bitWindowsで2chtubo.exeが落ちる場合

いまさらという感じの話ですが。
2chtubo.exe(禁断の壷)を64ビット版Windowsで使用して、バッファオーバーランのエラーを吐く場合の対処法。

Buffer overrun detected!
Program:C:\Program Files (x86)\2chtubo\tubo\_2chtubo.exe
A Buffer overrun has been detected which has corrupted the program's internal state.The program cannot safely continue execution and must now be terminated.

こんなエラーが出る場合。

事実上更新が停止状態で、当然64ビット版にも非対応なわけですが、レジストリをいじって無理矢理使います。
備忘的に書いておくので、XPから64ビット版の7に移行する方参考にしてください。

レジストリをいじくりますので、間違えるとPCが起動しなくなります
間違えなくてもPCが起動しなくなる可能性があります。
ご注意ください。
怖いですね。怖いと思ったら2ちゃんねるターボなんて使うの止めましょう。

自動構成を無効にする

Windows 7 x64 Professionalで作業します。
「コントロールパネル」>「インターネットオプション」を開きます。
「接続」タブをクリックします。

下の方、「ローカルエリアネットワーク(LAN)の設定」の「LANの設定(L)」のボタンを押します。

「自動構成」で「設定を自動的に検出する」にチェックが入っている場合は、チェックを外します。

レジストリエディタ

レジストリエディタを開きます。
Windowsキーと「R」を押して、「ファイル名を指定して実行」でregeditと入力し、「OK」を押します。
あるいは、「プログラムとファイルの検索」でregedit.exeを検索してもいいでしょう。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections
レジストリエディタで、上記のキーを開きます。ツリー上の構造になっているので、サブキーを一つ一つ開いていきます。
左側に「HKEY_CURRENT_ROOT」「HKEY_CURRENT_USER」「HKEY_LOCAL_MACHINE」…と並んでいるうち、「HKEY_CURRENT_USER」の左側の三角をクリック。
「HKEY_CURRENT_USER」が開くので、「Software」を探してクリックし、次に「Microsoft」…を開いてクリックし、次に「Windows」を開いて… を繰り返して、最後の「Connections」まで到達します。

最後の「Connections」まで開くのがなかなか大変だったと思いますが、また何度もここを開く可能性があるので、「お気に入り」に登録しておくことをお勧めします。
一度登録しておけば、次からは一発で開けます。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections
まで開いたら、右側に「DefaultConnectionSettings」というエントリがあります。
「DefaultConnectionSettings」を選択して右クリックし、「バイナリデータの修正(B)」をクリックします。

こんな感じの英数字の羅列が並びます。
ここのデータが多すぎるせいで、エラーを吐いて停まるわけです。
そこでこれを一部削ります。
どこをどのくらい削ればいいのかは… 分かりません!
分からないというか、要するに環境次第なのですが、私の場合は先頭10バイトを残して残りを削除する方法で成功しています。本家のスレッドで紹介されている方法です(本家では「01 00」以降を削除する」という表現ですが)。

9バイト目10バイト目の「01 00」の後、11バイト目以降(21番目以降の数字)をマウスでドラッグして選択していきます。

ずーっと下まで値があるはずなので、一番下まで選択します。
一番下まで選択したらDeleteキーを押して削除。

「OK」を押します。

これでエラーが出なくなるはずです。

前記のように、「DefaultConnectionSettings」の値をどうすれば良いのかははっきりしないので、何度も試行錯誤することを覚悟する必要があります。
本家のスレッドではほかにも、「DefaultConnectionSettingsのエントリ自体を削除してしまう」「2chtubo.exeが動作していた32ビット版OSにおける値をメモしておき、その64ビット版OSでもそれと同じ値に書き換える」といった方法が紹介されています。

面倒ですね。面倒だと思ったら2ちゃんねるターボなんて使うの止めちゃいましょう。

何度も起きる

何度も起きる場合、他のアプリケーションがInternetExplorerの設定を書き換えている可能性が高いと思います。
一度実行するだけのアプリケーションが原因であれば、その都度レジストリを書き換えればいいのですが、常駐するタイプが原因だと対処不能ではないかと思います。2chtubo.exeを使うのをやめて原因のアプリケーションを選ぶか、原因のアプリケーションをあきらめて2chtubo.exeを選ぶか、二者択一の選択を迫られることになろうかと思います。

実は本日、某ファイアウォールソフトを試していて、何度も何度も何度もエラーが出てほとほと嫌になったせいでこの記事を書こうと思い立ったのでした。
ダメだ、IEに変なもの組み込むやつは全部ダメで共存不能だ。