はじままして、VB6で開発しています川村といいます。
早速質問です。
VB6で、OS(Windows2000)に設定されている言語を取得したいのですが、
何か方法はありますでしょうか?
生成したEXEを日本語環境と英語環境で使用することになり、
言語を判定できる方法を探しています。
簡単な質問で申し訳ないのですが、よろしくお願いいたします。
こんなんが見つかりました!
http://www.galliver.co.jp/writing/msdn/msdn14/
ロケール値の判定・・・
グローバライゼーションとローカライゼーションですネ!
VB6の場合、1本のEXEで複数言語には対応していない為
リソース(この場合、DBCS表示しているラベルとか・・・)
を、SBCSで張り替えないといけないということになります
が、ファイル名の文字列等では、英語環境下、必ずDBCSを
使わないと言うことであれば、ある程度は大丈夫だと思います。
ですが、VB6のランタイムでは、日本語リソースのみを定義
したDLLが存在しますので、これを英語環境に入れた場合、
どうなるかは保証の限りではありません。
それを承知の上、と言うことであれば、なんとかなると思いま
すが、英語版VB6と日本語版VB6で、2本作られた方が、
安全だとは思いますが・・・
以上。
早速の回答ありがとうございます。
とおりすがりさんへ
参考になり、大変助かりました。
早速、GetLocaleInfo()関数を検討してみます。
岡田 之仁 さんへ
”日本語リソースのみを定義したDLLが存在しますので、・・・”
確かにありましたね。
使っていいないつもりですが、なんせまだ日本語環境しかないもので。
2本作る方式も検討してみたいと思います。
ツイート | ![]() |