[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
Re: [MD:7296] WINVER は明示的に定義すべき?
- X-ml-count: 7298
- Subject: Re: [MD:7296] WINVER は明示的に定義すべき?
- From: "M.Fujii" <boochang@xxxxxxxxxxxx>
- Date: Fri, 28 Apr 2006 19:11:07 +0900 (JST)
- X-mailer: Mew version 4.2 on Emacs 22.0.50 / Mule 5.0 (SAKAKI)
藤井です。
From: Shun-ichi GOTO <gotoh@xxxxxxxxxxx>
Subject: Re: [MD:7296] WINVER は明示的に定義すべき?
Date: Fri, 28 Apr 2006 10:41:42 +0900 (JST)
> 三好> WINVER を Meadow 側で明示的に定義すべきでしょうか?
Cygwin でビルドすることを考えると、どちらにしても Cygwin 向けの条件コン
パイルが必要になると思われます。
Cygwin では Platform SDK のように WINVER などのマクロによる新しい定義の
抑制がうまくいかないケースがあります。
たとえば [MD:7289] で問題になった RECONVERTSTRING 構造体は imm.h をイン
クルードすれば WINVER の値に関係なく定義されます。
> emacs コードにおいて、それを定義する事でどれほどの修正を要するかは試して
> 見ないと。その結果にもよるでしょうけど、結構すごい結果になりそうな...
NTEmacs では WINVER は定義されていませんが、_WIN32_WINNT が定義され、値
が 0x0400 になっているので、新しい API に依存したコードはあまりないので
はないかと思われます。
Meadow のコード以外にはそれほど修正は必要ないと思います。
> あと、cygwin/mingw 方面ではWINVER は無いにしても相当する何かがあるのか気
> になる所。Win32 API set を示す番号はあっても良さそうに思うのですが、
> Microsoft がその当たりをきっちりと定義していなさそうなので無理かもな。
[MD:7289] では WINVER は定義されていないと間違って書いてしまいましたが、
定義はされています。ただし、上に書いたように WINVER による条件コンパイ
ルの指定が漏れている場所もあります。ほとんどはちゃんと指定されていると
思いますが。
Cygwin では w32api パッケージのバージョンが定義されたマクロがありますが、
必要となるシーンはそれほどないように思います。
--
藤井 正行 / Masayuki FUJII