Differences From Artifact [df032703cbe98ced]:
- File        
src/win32/windows.d
- 2011-02-23 12:53:16 - part of checkin [c2b7a98c21] on branch trunk - Initial import (user: kinaba) [annotate]
 
To Artifact [886c2dae4f8ee53d]:
- File        
src/win32/windows.d
- 2015-04-21 10:46:55 - part of checkin [4e2933c620] on branch trunk - Rebased to the latest verson dmd 2.067. Not yet verified the outcome. (user: kinaba) [annotate]
 
            1  +/***********************************************************************\
            2  +*                               windows.d                               *
            3  +*                                                                       *
            4  +*                       Windows API header module                       *
            5  +*                                                                       *
            6  +*             Translated from MinGW API for MS-Windows 3.10             *
            7  +*                                                                       *
            8  +*                       Placed into public domain                       *
            9  +\***********************************************************************/
     1     10   module win32.windows;
     2     11   
     3         -// Translated from Microsoft Platform SDK August 2001 Edition
     4         -// by Y.Tomino (demoonlit@inter7.jp)
           12  +/*
           13  + windows.h - main header file for the Win32 API
           14  +
           15  + Written by Anders Norlander <anorland@hem2.passagen.se>
           16  +
           17  + This file is part of a free library for the Win32 API.
           18  +
           19  + This library is distributed in the hope that it will be useful,
           20  + but WITHOUT ANY WARRANTY; without even the implied warranty of
           21  + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
           22  +
           23  +*/
           24  +
           25  +public import win32.w32api;
           26  +public import win32.core;
           27  +
           28  +// We can't use static if for imports, build gets confused.
           29  +version (WindowsVista) {
           30  + public import win32.winsvc;
           31  +} else version (Windows2003) {
           32  + public import win32.winsvc;
           33  +} else version (WindowsXP) {
           34  + public import win32.winsvc;
           35  +} else version (WindowsNTonly) {
           36  + public import win32.winsvc;
           37  +}
           38  +
           39  +public import win32.cderr;
           40  +public import win32.dde;
           41  +public import win32.ddeml;
           42  +public import win32.dlgs;
           43  +public import win32.imm;
           44  +public import win32.lzexpand;
           45  +public import win32.mmsystem;
           46  +public import win32.nb30;
     5     47   
     6     48   
     7         -// #ifndef _WINDOWS_
     8         -// #define _WINDOWS_
     9         -
    10         -// #ifndef WINVER
    11         -// #...
    12         -// #else
    13         -// #if defined(_WIN32_WINNT) && (WINVER < 0x0400) && (_WIN32_WINNT > 0x0400)
    14         -// #...
    15         -// #endif
    16         -// #endif
    17         -
    18         -// #ifndef _INC_WINDOWS
    19         -// #define _INC_WINDOWS
    20     49   
    21         -// #if defined (_MSC_VER) && (_MSC_VER >= 1020)
    22         -// #pragma once
    23         -// #endif
    24         -
    25         -// #if defined(RC_INVOKED) && !defined(NOWINRES)
    26         -
    27         -// #...
    28         -
    29         -// #else
    30         -
    31         -// #if defined(RC_INVOKED)
           50  +public import win32.rpc;
           51  +public import win32.shellapi;
           52  +public import win32.winperf;
           53  +public import win32.commdlg;
           54  +public import win32.winspool;
           55  +public import win32.ole2;
    32     56   
    33         -// #...
    34         -// #...
    35         -// #...
    36         -// #...
    37         -// #...
    38         -// #...
    39         -// #...
    40         -// #...
    41         -// #...
    42         -// #...
    43         -// #...
    44         -// #...
    45         -// #...
    46         -// #...
    47         -// #...
    48         -// #...
    49         -// #...
    50         -// #endif
    51         -
    52         -// #if !defined(_68K_) && !defined(_MPPC_) && !defined(_X86_) && !defined(_IA64_) && !defined(_AMD64_) && defined(_M_IX86)
    53         -// #...
    54         -// #endif
    55         -
    56         -// #if !defined(_68K_) && !defined(_MPPC_) && !defined(_X86_) && !defined(_IA64_) && !defined(_AMD64_) && defined(_M_AMD64)
    57         -// #...
    58         -// #endif
    59         -
    60         -// #if !defined(_68K_) && !defined(_MPPC_) && !defined(_X86_) && !defined(_IA64_) && !defined(_AMD64_) && defined(_M_M68K)
    61         -// #...
    62         -// #endif
    63         -
    64         -// #if !defined(_68K_) && !defined(_MPPC_) && !defined(_X86_) && !defined(_IA64_) && !defined(_AMD64_) && defined(_M_MPPC)
    65         -// #...
    66         -// #endif
           57  +// Select correct version of winsock.  Importing the incorrect
           58  +// module will cause a static assert to prevent problems later on.
           59  +version (Win32_Winsock1) {
           60  + public import win32.winsock;
           61  +} else {
           62  + public import win32.winsock2;
           63  + public import win32.ws2tcpip;
           64  +}
    67     65   
    68         -// #if !defined(_68K_) && !defined(_MPPC_) && !defined(_X86_) && !defined(_M_IX86) && !defined(_AMD64_) && defined(_M_IA64)
    69         -// #if !defined(_IA64_)
    70         -// #...
    71         -// #endif // !_IA64_
    72         -// #endif
    73         -
    74         -// #ifndef _MAC
    75         -// #if defined(_68K_) || defined(_MPPC_)
    76         -// #...
    77         -// #endif
    78         -// #endif
    79         -
    80         -// #if defined (_MSC_VER)
    81         -// #if ( _MSC_VER >= 800 )
    82         -// #ifndef __cplusplus
    83         -// #...
    84         -
    85         -// #endif
    86         -// #endif
    87         -// #endif
    88         -
    89         -// #ifndef RC_INVOKED
    90         -// #if     ( _MSC_VER >= 800 )
    91         -// #pragma warning(disable:4514)
    92         -// #ifndef __WINDOWS_DONT_DISABLE_PRAGMA_PACK_WARNING__
    93         -// #pragma warning(disable:4103)
    94         -// #endif
    95         -// #if _MSC_VER >= 1200
    96         -// #pragma warning(push)
    97         -// #endif
    98         -// #pragma warning(disable:4001)
    99         -// #pragma warning(disable:4201)
   100         -// #pragma warning(disable:4214)
   101         -// #endif
   102         -// #include <excpt.h>
   103         -// #include <stdarg.h>
   104         -// #endif /* RC_INVOKED */
   105         -
   106         -import win32.windef;
   107         -import win32.winbase;
   108         -import win32.wingdi;
   109         -import win32.winuser;
   110         -// #if !defined(_MAC) || defined(_WIN32NLS)
   111         -import win32.winnls;
   112         -// #endif
   113         -// #ifndef _MAC
   114         -import win32.wincon;
   115         -import win32.winver;
   116         -// #endif
   117         -// #if !defined(_MAC) || defined(_WIN32REG)
   118         -import win32.winreg;
   119         -// #endif
   120         -// #ifndef _MAC
   121         -// #include <winnetwk.h>
   122         -// #endif
   123         -
   124         -// #ifndef WIN32_LEAN_AND_MEAN
   125         -// #include <cderr.h>
   126         -import win32.dde;
   127         -import win32.ddeml;
   128         -import win32.dlgs;
   129         -// #ifndef _MAC
   130         -// #include <lzexpand.h>
   131         -import win32.mmsystem;
   132         -// #include <nb30.h>
   133         -// #include <rpc.h>
   134         -// #endif
   135         -import win32.shellapi;
   136         -// #ifndef _MAC
   137         -// #include <winperf.h>
   138         -// #include <winsock.h>
   139         -// #endif
   140         -// #ifndef NOCRYPT
   141         -// #...
   142         -// #...
   143         -// #...
   144         -// #endif
   145         -
   146         -// #ifndef NOGDI
   147         -// #ifndef _MAC
   148         -import win32.winspool;
   149         -// #ifdef INC_OLE1
   150         -// #...
   151         -// #else
   152         -// #include <ole2.h>
   153         -// #endif /* !INC_OLE1 */
   154         -// #endif /* !MAC */
   155         -import win32.commdlg;
   156         -// #endif /* !NOGDI */
   157         -// #endif /* WIN32_LEAN_AND_MEAN */
   158         -
   159         -// #include <stralign.h>
   160         -
   161         -// #ifdef _MAC
   162         -// #...
   163         -// #endif
   164         -
   165         -// #ifdef INC_OLE2
   166         -// #...
   167         -// #endif /* INC_OLE2 */
   168         -
   169         -// #ifndef _MAC
   170         -// #ifndef NOSERVICE
   171         -// #...
   172         -// #endif
   173         -
   174         -// #if(WINVER >= 0x0400)
   175         -// #ifndef NOMCX
   176         -// #...
   177         -// #endif /* NOMCX */
   178         -
   179         -// #ifndef NOIME
   180         -import win32.imm;
   181         -// #endif
   182         -// #endif /* WINVER >= 0x0400 */
   183         -// #endif
   184         -
   185         -// #ifndef RC_INVOKED
   186         -// #if     ( _MSC_VER >= 800 )
   187         -// #if _MSC_VER >= 1200
   188         -// #pragma warning(pop)
   189         -// #else
   190         -// #...
   191         -// #...
   192         -// #...
   193         -
   194         -// #endif
   195         -// #endif
   196         -// #endif /* RC_INVOKED */
   197         -
   198         -// #endif /* RC_INVOKED */
   199         -
   200         -// #endif /* _INC_WINDOWS */
   201         -// #endif /* _WINDOWS_ */
   202         -
           66  +/+
           67  +#if (_WIN32_WINNT >= 0x0400)
           68  +#include <winsock2.h>
           69  +/*
           70  + * MS likes to include mswsock.h here as well,
           71  + * but that can cause undefined symbols if
           72  + * winsock2.h is included before windows.h
           73  + */
           74  +#else
           75  +#include <winsock.h>
           76  +#endif /*  (_WIN32_WINNT >= 0x0400) */
           77  ++/