SI Object Browserが日本語を表示しない

オブジェクトブラウザがあまりにも一般的な用語過ぎて検索するのに四苦八苦なさるべーじですこんばんは。

第一オブジェクトブラウザって名称そのものがVisual Studio IDEなどの中の一機能とまったく同じですし、オブジェクトブラウザもむっちゃくちゃ一般的に用いられる単語ではないですか。

もうオブジェクト指向とWebブラウザが憎い。憎いよ。

ついでに、Microsoftの製品群がけっこう汎用的な一般名称を使っているのも憎い。
SQL Serverなんてのも、SQLServerなんて単語は世界中のRDBMSシステムがもれなく使うであろうという。

中央ではSQL Server、地方ではOracleがよく売れる、って話を聞いたことがありますが、これ絶対Webでの情報検索がしやすいかどうかが一役買っていると私は思っています。
セミナー等オフラインで情報を入手しやすい中央ではより廉価なSQL Server、Webでの情報入手がメイン手段である地方ではより情報を探しやすいOracle、みたいな感じで。

これから商品/製品に名前をつける方は、ぜひ「続きはWebで」の精神を持っていただきたいもんです。


さてひさびさのエントリというせいもあり、のっけからエラい勢いで余談トークをカマしてみたわけですが。

本題は、ひさびさにOB9(SI Object Browser9)を使ってみたところ、テーブルレイアウトのコメント部とかデータの一覧とかで多バイトコード(いわゆる日本語の部分ですね)がすべて"?????"な漢字の表示になってしまっていたのでした。

他のマシンからは正常に表示できますし、当該マシンでも仮想環境のOB9では正常に表示されるんです。SQL Plusでも正常に表示されると。

どーにも原因がわかんないわけです。開発元の システムインテグレータ社 の 掲示板 とかでもそれらしい質問は出ているんですが、サポートのほうで再現ができずにお手上げ状態な雰囲気で。

こちらでも設定状況をレジストリレベルまで追っかけてったんですが、どうにも差異が見つからないんですね。正常に表示される環境からOB9関係のレジストリをまるごとエクスポート→当該環境にインポートしても"?????"なままで。

もーこっちが"?????"ですよ。

SQL Plusでもバケる場合には、レジストリのHKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\(接続環境名)\NLS_LANGの値を"JAPANESE_JAPAN.JA16***TILDE"("***"部にはEUCやSJISが入ったりします / "TILDE"はないほうがいい場合もあります)にすれば一応OKOKだったりするんですが。

まあ今回の結果としては、Windowsのの環境変数(コマンドプロンプトで"set"と打つと出てくるアレですよ)に「NLS_LANG=(上記のレジストリと同じ設定値)」を追加([システムのプロパティ]ダイアログ-[詳細設定]タブ-[環境変数]で表示される[環境変数]ダイアログで編集可能)してやったら理由はわからないけど正常に表示されるようになりました。

もともと正常に表示されるマシンでも、この環境変数が設定されてない場合があるもんですから、「そこを設定してないのが原因だ」とも言い切れないのがなんとも歯切れの悪いところではあるんですが。

でもまあ「原因ははっきりしないが効果がある時もあるんだよ」程度の「逃げのノウハウ」ってことでとりあえずメモ。

問題は解決できましたが釈然としないなー。

コメントを投稿