VB6で中国語(UNICODE)の文字を表示

NO IMAGE

実は最近必要に迫られてVB6で作られたプログラム(日本語)を中国語も表示させたいと言われてしまい、頭を掲げていた。実は、VB6ではそのままでは中国語を表示させることができないのだ。それは、VB6など古い開発環境は、UNICODEには一切対応していないから。

どうしても、プログラムで日本語・中国語を表示させたいのであれば、中国語版のVB6をどこからか入手するか、ドットNET系の開発環境でプログラムを作り直すか変換してやって修正するしか方法はなかったのだ。一部コントロールに関してはUNICODEを表示させることができるのだけれど、それでも結構な労力だ。おいらは正直うまくいかなかった。

しかーし、ある時「案ずるは生むが易し」ということに気が付いた。Windows OSのコントロールパネルにある「地域と言語」の管理にある「UNICODEではないプログラムの言語」を「中国語」に設定するだけで中国語で書かれたプログラム表示にも対応できるのだ。韓国語であったら、そこの設定を韓国語にすればOK。

この設定を、VB6が入っているPCとそのプログラムを実行するPCの両方に行ってやれば、没問題!!(meiwenti)だそうな(おっと、中国語だぜい)。以前から、この問題が解決できず、プログラミングの質問コーナーを賑わせていたこの問題、何ら解決できずにいたけれど、何も難しいことはありやせん。

ネットで検索をかけると、「自分は仕事では客に言って中国語を使わない仕様に変更させる」なんて質問コーナーで堂々と言ってのける自称プロの方がいましたが、それを見たときは、プロの人が言うのだから、UNICODEを表示させるのは難しいのかもなんて思っていたけれど、今から思うとこんな簡単なこともそのお方は知らなかったんでしょう。「自分は無知です」と言っているようなもの。おいらのようなヘボが知っているのに、ある意味恥ずかしいかも…。

それにしても、この設定「UNICODEではない」と書かれているのに、UNICODEが表示できるのって一体なぜ??