iniファイルの設定について

解決


カイザー  2002-10-10 14:50:39  No: 105159  IP: [192.*.*.*]

ご質問です。

INIファイルの設定をAPIによって使用していますが、
NT系とWIN系では、プラットフォームが異なる為に宣言の方法を
変更しなければならないのでしょうか?

また、NT系とWIN系の両方に対応する事の出来る
最も良い処理方法をお教えください。

編集 削除
たかみちえ  URL  2002-10-10 15:59:45  No: 105160  IP: [192.*.*.*]

NT系と9x系のことですね?
この二つは文字の扱いが違うため、文字列が必要なAPIは二つのものが用意してあります。
ANSI版(Windows95/98/Me用)は〜〜A
Unicode版(WindowsNT/2000/XP用)は〜〜W
と名前のついたAPIです。

  ただ、大体のAPIはコンパイラなどが自分で判断してくれるので、特に気をつける必要はないです。
名前の最後にAかWのついていないAPIを使えば、
OSによってAがついたほうかWがついたほうか、自動的に使えるほうが使われます。

  ただ、非公開のAPIは、片方しか用意してありません。
そのあたりは、これを見てください。
http://www.runan.net/program/tips/index.shtml
  いつから使えるかわからないし、大体かわりになる関数があるので、
あまり使う機会はないと思いますけど…。

編集 削除
YuO  2002-10-11 01:21:32  No: 105161  IP: [192.*.*.*]

> INIファイルの設定をAPIによって使用していますが、
> NT系とWIN系では、プラットフォームが異なる為に宣言の方法を
> 変更しなければならないのでしょうか?

ANSI用のAPIを利用すれば,どちらでも利用可能です。


>  ただ、大体のAPIはコンパイラなどが自分で判断してくれるので、特に気をつける必要はないです。
> 名前の最後にAかWのついていないAPIを使えば、
> OSによってAがついたほうかWがついたほうか、自動的に使えるほうが使われます。

ふにゃ?
コンパイラはどっちか片方に対してのコードしか吐きません。
例えばC言語であれば,UNICODEという識別子が定義されているかどうかだけで判別しています。

編集 削除
カイザー  2002-10-11 09:07:49  No: 105162  IP: [192.*.*.*]

なるほど。
ちなみに、ANSI用とUnicode用のAPIの
宣言方法などを、教えてもらえるとありがたいです。

編集 削除
YuO  2002-10-11 13:53:50  No: 105163  IP: [192.*.*.*]

そんなの自分で調べてくれ……って気がします。
MSDN引いて手に入る情報から宣言できますから。

ちなみに,Unicode用のAPIはVBからは通常使いません。
#面倒くさいし。

編集 削除
たかみちえ  URL  2002-10-12 11:41:10  No: 105164  IP: [192.*.*.*]

>ふにゃ?
>コンパイラはどっちか片方に対してのコードしか吐きません。
  あらら、そうですか・・・(^^ゞ
まえ、どこかでそんな話を聞いた気がしたので、
とりあえずそう書いておきました。考えてみればおかしいですね、
YuOさん指摘ありがとうございます。

編集 削除
カイザー  2002-10-15 14:02:12  No: 105165  IP: [192.*.*.*]

ご協力ありがとうございました。
無事解決いたしました。

編集 削除