Yet another effort at translating the Win32 API headers

Stewart Gordon smjg_1998 at yahoo.com
Wed Mar 29 10:41:40 PST 2006


xs0 wrote:
> Stewart Gordon wrote:
>> xs0 wrote:
<snip>
>>> Now, the above condition does have to use an ||, as it's never the 
>>> case that both are defined. It's also true that it could simply be 
>>> (in this case)
>> <snip>
>>
>> So I'm writing my program for both Windows 98 and Windows 2000, what 
>> versions should I set?
> 
> both
> _WIN32_WINDOWS=0x0410
> and
> _WIN32_WINNT=0x0500

And leave WINVER undefined?

> I was obviosuly wrong in saying that both are never defined :) I should 
> get more sleep before posting next time. It should still be ||, though, 
> because otherwise you'd always have to declare both, and there's no real 
> need.

I think I see what you mean now.

> BTW, wouldn't something like this work for CC:
> 
> version(WINAPI_98) {
>     version=WINAPI_95;
> }

I was thinking something like this myself.  Though with names like 
Windows98, WindowsME, Windows2000 rather than WINAPI_*.

<snip>
> Then, when compiling, you can set the api version you want with 
> -version=?. If you don't set it, it should probably default to the 
> latest known version?

This structure would imply that not setting it would default to the 
earliest known version.  As is the case with the C headers.  I was 
thinking of 95/NT4 being the default level and versioning to enable 
higher Windows versions.

I'll study the headers a bit more and correlate them with the info on 
the MSDN site.  This should help to understand what should be enabled when.

Stewart.

-- 
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS/M d- s:-@ C++@ a->--- UB@ P+ L E@ W++@ N+++ o K-@ w++@ O? M V? PS- 
PE- Y? PGP- t- 5? X? R b DI? D G e++>++++ h-- r-- !y
------END GEEK CODE BLOCK------

My e-mail is valid but not my primary mailbox.  Please keep replies on 
the 'group where everyone may benefit.



More information about the Digitalmars-d-announce mailing list