〔過去ログ一覧〕〔前の画面〕
| 【 578 】 99bで履歴とメッセージアーカイブを日本語化する |
1999/8/25(水)01:38 - Syo
はじめに断っておきますが、この記事は中級者以上を対象にしています.
ICQ 99b beta v3.17 Build2565の日本語化パッチ以外の部分の日本語化ですが、
こちらでもホームページの記事を参考にしていろいろと試してみました.
(参考になる記事をありがとうございます.)
お約束ですが、自分で試す場合は自己責任のもとでお願いします.
99bでは、メインのフォント指定部分はICQCore.DLLに存在します.
ICQCore.DLLをStirlingなどで読み込み、"MS Sans Serif"をサーチすると
出てきます.
ここを書き換えます.
私は、Ticagoフォントをインストール後、Win.iniのFontSubstitute
サブセクションに以下のように設定しました.
ICQTicago=Ticago,128,3
よって、MS Sans SerifをICQTicagoに書き換えました.
#文字列"ICQTicago"の後に$00を置くのを忘れないように.
これによって、行末で若干文字化けが出るものの、履歴で日本語が
表示できるようになりました.
次に、メッセージアーカイブで日本語を表示できるようにします.
レジストリエディタを起動し、以下のキーを見ます.
????????の部分には、8桁のICQ#が入ります.
(長すぎるので途中で改行しています.)
\HKEY_CURRENT_USER\Software\Mirabillis\ICQ\Owners\?????????
\Message Archive\New Font Name
このキーの値がメッセージアーカイブで使用するフォント名となっています.
これを書き換えます.
ここまでで、日本語化できていないところがまだ残っています.
メッセージアーカイブのメッセージダイアログが文字化けしている
のに気づくはずです.
デバッガを使用して解析したところ、以下のことが判明しました.
・Message Dialogでは、きちんと表示メニューで指定されたとおりのフォントを
使用しているが、それ以外のメッセージアーカイブでは、ICQCore.DLLでロード
したフォントをそのまま使用している.
なんでこんな仕様なのかはわかりません.
99b版特有のバグかもしれません.
では、先ほどのレジストリキーを書き換えて、ICQTicagoにすればいいじゃないか
とお思いでしょうが、それではうまくいかないのです.(実験済み)
どうすればいいでしょうか?
試行錯誤した上で、発見した方法は、以下のとおりです.
・次のレジストリキーを削除する.
(????????は、ICQ#です.)
\HKEY_CURRENT_USER\Software\Mirabillis\ICQ\Owners\?????????
\Message Archive\New Font Name
これによって、ICQCore.DLLでロードされたフォントをそのまま
使用するようになります.
ただし、表示メニューでフォント指定をすると元に戻りますので
注意してください.
その場合は、もう一度レジストリキーを削除してください.
手順を整理してみます.
1. TicagoフォントをWindowsにインストールする.
2. システムエディタなどでWin.iniを開き、FontSubstituteセクションに
以下の記述を追加する.
ICQTicago=Ticago,128,3
^---^---この二つはカンマですので注意しましょう.
私は間違えました(笑)
3. ICQが起動していないことを確認する.
起動している場合は終了してください.
4. ICQCore.DLLをバイナリエディタで開き、文字列"MS Sans Serif"を
サーチする.
サーチしたら、そこから文字列"ICQTicago"を書き込む.
書き込んだら、必ずoの次の位置に16進数 $00 を置くこと.
5. レジストリエディタで、以下のキーを削除する.
\HKEY_CURRENT_USER\Software\Mirabillis\ICQ\Owners\?????????
\Message Archive\New Font Name
6. Windowsを再起動する.
これで、メッセージアーカイブ・履歴も完全に日本語が
使えるようになります.
この解析結果をもとに、日本語化パッチに吸収してくださることを
望みます.^^;
〔ツリー構成〕
| ┣【578】 99bで履歴とメッセージアーカイブを日本語化する 1999/8/25(水)01:38 Syo (3167) |
-
-
-
〔前の画面〕
〔終了〕
Pockets Studio ICQ Dojo'99