Changeset 135

Show
Ignore:
Timestamp:
06/02/06 11:24:51 (6 years ago)
Author:
Don Clugston
Message:

Commited on behalf of Stewart. Loads of cleanup, 5 new files.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/win32/accctrl.d

    r104 r135  
    122122 
    123123const uint 
    124     NO_INHERITANCE                    = 0x0, 
     124    NO_INHERITANCE                     = 0x0, 
    125125    SUB_OBJECTS_ONLY_INHERIT           = 0x1, 
    126126    SUB_CONTAINERS_ONLY_INHERIT        = 0x2, 
  • trunk/win32/all.d

    r128 r135  
    2929import win32.servprov; 
    3030import win32.exdisp; 
     31import win32.exdispid; 
     32import win32.idispids; 
    3133import win32.mshtml; 
    3234 
     
    3739import win32.sqlext; 
    3840import win32.sqlucode; 
     41 
     42import win32.imagehlp; 
     43 
     44version (Windows2003) { 
     45    import win32.dhcpcsdk; 
     46    import win32.errorrep; 
     47} else version (WindowsXP) { 
     48    import win32.dhcpcsdk; 
     49    import win32.errorrep; 
     50} else version (WindowsNTonly) { 
     51    version (Windows2000) import win32.dhcpcsdk; 
     52} 
  • trunk/win32/commctrl.d

    r127 r135  
    9090enum { 
    9191    CBEN_INSERTITEM = CBEN_FIRST - 1, 
    92     CBEN_DELETEITEM    = CBEN_FIRST - 2, 
     92    CBEN_DELETEITEM = CBEN_FIRST - 2, 
    9393    CBEN_BEGINEDIT  = CBEN_FIRST - 4, 
    9494    CBEN_ENDEDITA   = CBEN_FIRST - 5, 
     
    877877} 
    878878 
    879 static if (_WIN32_IE >= 0x400) {       /* IE4.0 ??? */ 
     879static if (_WIN32_IE >= 0x400) {  /* IE4.0 ??? */ 
    880880    enum { 
    881881        TTM_UPDATE = WM_USER + 29, 
     
    20082008    DTN_FORMATQUERYW   = -742U, 
    20092009    DTN_DROPDOWN       = -754U, 
    2010     DTN_CLOSEUP           = -753U, 
     2010    DTN_CLOSEUP        = -753U, 
    20112011    DTN_DATETIMECHANGE = -759U, 
    20122012} 
     
    35283528struct TVHITTESTINFO { 
    35293529    POINT     pt; 
    3530  UINT      flags; 
     3530  UINT      flags; 
    35313531    HTREEITEM hItem; 
    35323532} 
     
    39943994 
    39953995    static if (_WIN32_IE >= 0x400) { 
    3996         alias TBN_GETBUTTONINFOW TBN_GETBUTTONINFO;    // fixme 
     3996        alias TBN_GETBUTTONINFOW TBN_GETBUTTONINFO;  // fixme 
    39973997    } 
    39983998 
  • trunk/win32/commdlg.d

    r127 r135  
    88*                       Placed into public domain                       * 
    99\***********************************************************************/ 
    10  
    1110module win32.commdlg; 
    1211pragma(lib, "comdlg32.lib"); 
     
    2726 
    2827const UINT 
    29     CDN_FIRST          = -601,/* also in commctrl.h */ 
     28    CDN_FIRST          = -601, // also in commctrl.h 
    3029    CDN_LAST           = -699, 
    3130    CDN_INITDONE       = CDN_FIRST, 
     
    9796    ITALIC_FONTTYPE    = 0x200, 
    9897    REGULAR_FONTTYPE   = 0x400, 
    99     SCREEN_FONTTYPE    = 0x2000,    
     98    SCREEN_FONTTYPE    = 0x2000, 
    10099    PRINTER_FONTTYPE   = 0x4000, 
    101100    SIMULATED_FONTTYPE = 0x8000 
    102101} 
    103      
     102 
    104103const WM_CHOOSEFONT_GETLOGFONT = WM_USER + 1; 
    105104const WM_CHOOSEFONT_SETLOGFONT = WM_USER + 101; 
     
    245244} 
    246245 
    247 void CommDlg_OpenSave_SetDefExt(HWND hWndControl, TCHAR * lparam) { 
     246void CommDlg_OpenSave_SetDefExt(HWND hWndControl, TCHAR* lparam) { 
    248247    return SendMessage(hWndControl, CDM_SETCONTROLTEXT, 0, cast(LPARAM)lParam); 
    249248} 
     
    258257+/ 
    259258 
    260 // Callbacks.  
     259// Callbacks. 
    261260extern(Windows) { 
    262261alias UINT function (HWND,UINT,WPARAM,LPARAM) 
     
    264263    LPPAGEPAINTHOOK, LPPAGESETUPHOOK, LPSETUPHOOKPROC, LPPRINTHOOKPROC; 
    265264} 
     265 
    266266align (1): 
    267267 
    268 struct CHOOSECOLORA
    269     DWORD  lStructSize; 
    270     HWND   hwndOwner; 
    271     HWND   hInstance; 
    272     COLORREF   rgbResult; 
    273     COLORREF*  lpCustColors; 
    274     DWORD  Flags; 
    275     LPARAM lCustData; 
    276     LPCCHOOKPROC   lpfnHook; 
    277     LPCSTR lpTemplateName; 
    278 } 
    279 alias CHOOSECOLORA * LPCHOOSECOLORA; 
    280  
    281 struct CHOOSECOLORW
    282     DWORD  lStructSize; 
    283     HWND   hwndOwner; 
    284     HWND   hInstance; 
    285     COLORREF   rgbResult; 
    286     COLORREF*  lpCustColors; 
    287     DWORD  Flags; 
    288     LPARAM lCustData; 
    289     LPCCHOOKPROC   lpfnHook; 
    290     LPCWSTR    lpTemplateName; 
    291 } 
    292 alias CHOOSECOLORW * LPCHOOSECOLORW; 
    293  
    294 struct CHOOSEFONTA
    295     DWORD  lStructSize; 
    296     HWND   hwndOwner; 
    297     HDC    hDC; 
    298     LPLOGFONTA lpLogFont; 
    299     INT    iPointSize; 
    300     DWORD  Flags; 
    301     DWORD  rgbColors; 
    302     LPARAM lCustData; 
    303     LPCFHOOKPROC   lpfnHook; 
    304     LPCSTR lpTemplateName; 
    305     HINSTANCE  hInstance; 
    306     LPSTR  lpszStyle; 
    307     WORD   nFontType; 
    308     WORD   ___MISSING_ALIGNMENT__; 
    309     INT    nSizeMin; 
    310     INT    nSizeMax; 
    311 } 
    312 alias CHOOSEFONTA * LPCHOOSEFONTA; 
    313  
    314 struct CHOOSEFONTW
    315     DWORD  lStructSize; 
    316     HWND   hwndOwner; 
    317     HDC    hDC; 
    318     LPLOGFONTW lpLogFont; 
    319     INT    iPointSize; 
    320     DWORD  Flags; 
    321     DWORD  rgbColors; 
    322     LPARAM lCustData; 
    323     LPCFHOOKPROC   lpfnHook; 
    324     LPCWSTR    lpTemplateName; 
    325     HINSTANCE  hInstance; 
    326     LPWSTR lpszStyle; 
    327     WORD   nFontType; 
    328     WORD   ___MISSING_ALIGNMENT__; 
    329     INT    nSizeMin; 
    330     INT    nSizeMax; 
    331 } 
    332 alias CHOOSEFONTW * LPCHOOSEFONTW; 
    333  
    334 struct DEVNAMES
     268struct CHOOSECOLORA
     269    DWORD        lStructSize; 
     270    HWND         hwndOwner; 
     271    HWND         hInstance; 
     272    COLORREF     rgbResult; 
     273    COLORREF*    lpCustColors; 
     274    DWORD        Flags; 
     275    LPARAM       lCustData; 
     276    LPCCHOOKPROC lpfnHook; 
     277    LPCSTR       lpTemplateName; 
     278} 
     279alias CHOOSECOLORA* LPCHOOSECOLORA; 
     280 
     281struct CHOOSECOLORW
     282    DWORD        lStructSize; 
     283    HWND         hwndOwner; 
     284    HWND         hInstance; 
     285    COLORREF     rgbResult; 
     286    COLORREF*    lpCustColors; 
     287    DWORD        Flags; 
     288    LPARAM       lCustData; 
     289    LPCCHOOKPROC lpfnHook; 
     290    LPCWSTR      lpTemplateName; 
     291} 
     292alias CHOOSECOLORW* LPCHOOSECOLORW; 
     293 
     294struct CHOOSEFONTA
     295    DWORD        lStructSize; 
     296    HWND         hwndOwner; 
     297    HDC          hDC; 
     298    LPLOGFONTA   lpLogFont; 
     299    INT          iPointSize; 
     300    DWORD        Flags; 
     301    DWORD        rgbColors; 
     302    LPARAM       lCustData; 
     303    LPCFHOOKPROC lpfnHook; 
     304    LPCSTR       lpTemplateName; 
     305    HINSTANCE    hInstance; 
     306    LPSTR        lpszStyle; 
     307    WORD         nFontType; 
     308    WORD         ___MISSING_ALIGNMENT__; 
     309    INT          nSizeMin; 
     310    INT          nSizeMax; 
     311} 
     312alias CHOOSEFONTA* LPCHOOSEFONTA; 
     313 
     314struct CHOOSEFONTW
     315    DWORD        lStructSize; 
     316    HWND         hwndOwner; 
     317    HDC          hDC; 
     318    LPLOGFONTW   lpLogFont; 
     319    INT          iPointSize; 
     320    DWORD        Flags; 
     321    DWORD        rgbColors; 
     322    LPARAM       lCustData; 
     323    LPCFHOOKPROC lpfnHook; 
     324    LPCWSTR      lpTemplateName; 
     325    HINSTANCE    hInstance; 
     326    LPWSTR       lpszStyle; 
     327    WORD         nFontType; 
     328    WORD         ___MISSING_ALIGNMENT__; 
     329    INT          nSizeMin; 
     330    INT          nSizeMax; 
     331} 
     332alias CHOOSEFONTW* LPCHOOSEFONTW; 
     333 
     334struct DEVNAMES
    335335    WORD wDriverOffset; 
    336336    WORD wDeviceOffset; 
     
    338338    WORD wDefault; 
    339339} 
    340 alias DEVNAMES * LPDEVNAMES; 
     340alias DEVNAMES* LPDEVNAMES; 
    341341 
    342342struct FINDREPLACEA { 
     
    353353    LPCSTR lpTemplateName; 
    354354} 
    355 alias FINDREPLACEA * LPFINDREPLACEA; 
     355alias FINDREPLACEA* LPFINDREPLACEA; 
    356356 
    357357struct FINDREPLACEW { 
     
    368368    LPCWSTR lpTemplateName; 
    369369} 
    370 alias FINDREPLACEW * LPFINDREPLACEW; 
     370alias FINDREPLACEW* LPFINDREPLACEW; 
    371371 
    372372struct OPENFILENAMEA { 
     
    392392    LPCSTR lpTemplateName; 
    393393} 
    394 alias OPENFILENAMEA * LPOPENFILENAMEA; 
    395  
    396 struct OPENFILENAMEW
     394alias OPENFILENAMEA* LPOPENFILENAMEA; 
     395 
     396struct OPENFILENAMEW
    397397    DWORD lStructSize; 
    398398    HWND hwndOwner; 
     
    416416    LPCWSTR lpTemplateName; 
    417417} 
    418 alias OPENFILENAMEW * LPOPENFILENAMEW; 
    419  
    420 struct OFNOTIFYA
     418alias OPENFILENAMEW* LPOPENFILENAMEW; 
     419 
     420struct OFNOTIFYA
    421421    NMHDR hdr; 
    422422    LPOPENFILENAMEA lpOFN; 
    423423    LPSTR pszFile; 
    424424} 
    425 alias OFNOTIFYA * LPOFNOTIFYA; 
    426  
    427 struct OFNOTIFYW
     425alias OFNOTIFYA* LPOFNOTIFYA; 
     426 
     427struct OFNOTIFYW
    428428    NMHDR hdr; 
    429429    LPOPENFILENAMEW lpOFN; 
    430430    LPWSTR pszFile; 
    431431} 
    432 alias OFNOTIFYW * LPOFNOTIFYW; 
    433  
    434 struct PAGESETUPDLGA
     432alias OFNOTIFYW* LPOFNOTIFYW; 
     433 
     434struct PAGESETUPDLGA
    435435    DWORD lStructSize; 
    436436    HWND hwndOwner; 
     
    448448    HGLOBAL hPageSetupTemplate; 
    449449} 
    450 alias PAGESETUPDLGA * LPPAGESETUPDLGA; 
    451  
    452 struct PAGESETUPDLGW
     450alias PAGESETUPDLGA* LPPAGESETUPDLGA; 
     451 
     452struct PAGESETUPDLGW
    453453    DWORD lStructSize; 
    454454    HWND hwndOwner; 
     
    466466    HGLOBAL hPageSetupTemplate; 
    467467} 
    468 alias PAGESETUPDLGW * LPPAGESETUPDLGW; 
    469  
    470 struct PRINTDLGA
     468alias PAGESETUPDLGW* LPPAGESETUPDLGW; 
     469 
     470struct PRINTDLGA
    471471    DWORD lStructSize; 
    472472    HWND hwndOwner; 
     
    489489    HANDLE hSetupTemplate; 
    490490} 
    491 alias PRINTDLGA * LPPRINTDLGA; 
    492  
    493 struct PRINTDLGW
     491alias PRINTDLGA* LPPRINTDLGA; 
     492 
     493struct PRINTDLGW
    494494    DWORD lStructSize; 
    495495    HWND hwndOwner; 
     
    512512    HANDLE hSetupTemplate; 
    513513} 
    514 alias PRINTDLGW * LPPRINTDLGW; 
     514alias PRINTDLGW* LPPRINTDLGW; 
    515515 
    516516static if (WINVER >= 0x0500) { 
    517 import win32.unknwn;/* for LPUNKNOWN  */ 
    518 import win32.prsht;/* for HPROPSHEETPAGE  */ 
    519  
    520 struct PRINTPAGERANGE
     517import win32.unknwn; // for LPUNKNOWN 
     518import win32.prsht;  // for HPROPSHEETPAGE 
     519 
     520struct PRINTPAGERANGE
    521521    DWORD  nFromPage; 
    522522    DWORD  nToPage; 
    523523} 
    524 alias PRINTPAGERANGE * LPPRINTPAGERANGE; 
    525  
    526 struct PRINTDLGEXA
     524alias PRINTPAGERANGE* LPPRINTPAGERANGE; 
     525 
     526struct PRINTDLGEXA
    527527    DWORD lStructSize; 
    528528    HWND hwndOwner; 
     
    543543    LPUNKNOWN lpCallback; 
    544544    DWORD nPropertyPages; 
    545     HPROPSHEETPAGE *lphPropertyPages; 
     545    HPROPSHEETPAGE* lphPropertyPages; 
    546546    DWORD nStartPage; 
    547547    DWORD dwResultAction; 
    548548} 
    549 alias PRINTDLGEXA * LPPRINTDLGEXA; 
    550  
    551 struct PRINTDLGEXW
     549alias PRINTDLGEXA* LPPRINTDLGEXA; 
     550 
     551struct PRINTDLGEXW
    552552    DWORD lStructSize; 
    553553    HWND hwndOwner; 
     
    568568    LPUNKNOWN lpCallback; 
    569569    DWORD nPropertyPages; 
    570     HPROPSHEETPAGE *lphPropertyPages; 
     570    HPROPSHEETPAGE* lphPropertyPages; 
    571571    DWORD nStartPage; 
    572572    DWORD dwResultAction; 
    573573} 
    574 alias PRINTDLGEXW * LPPRINTDLGEXW; 
    575  
    576 } /* WINVER >= 0x0500 */ 
     574alias PRINTDLGEXW* LPPRINTDLGEXW; 
     575 
     576} // WINVER >= 0x0500 
    577577 
    578578align: 
     
    601601 
    602602static if (WINVER >= 0x0500) { 
    603  
    604 HRESULT PrintDlgExA(LPPRINTDLGEXA); 
    605 HRESULT PrintDlgExW(LPPRINTDLGEXW); 
    606  
     603    HRESULT PrintDlgExA(LPPRINTDLGEXA); 
     604    HRESULT PrintDlgExW(LPPRINTDLGEXW); 
    607605} 
    608606 
    609607version(Unicode) { 
    610  
    611 alias CHOOSECOLORW CHOOSECOLOR; 
    612 alias CHOOSEFONTW CHOOSEFONT; 
    613 alias FINDREPLACEW FINDREPLACE; 
    614 alias OPENFILENAMEW OPENFILENAME; 
    615 alias OFNOTIFYW OFNOTIFY; 
    616 alias PAGESETUPDLGW PAGESETUPDLG; 
    617 alias PRINTDLGW PRINTDLG; 
    618  
    619  
    620 alias ChooseColorW ChooseColor; 
    621 alias ChooseFontW ChooseFont; 
    622 alias FindTextW FindText; 
    623 alias GetFileTitleW GetFileTitle; 
    624 alias GetOpenFileNameW GetOpenFileName; 
    625 alias GetSaveFileNameW GetSaveFileName; 
    626 alias PageSetupDlgW PageSetupDlg; 
    627 alias PrintDlgW PrintDlg; 
    628 alias ReplaceTextW ReplaceText; 
    629  
     608    alias CHOOSECOLORW CHOOSECOLOR; 
     609    alias CHOOSEFONTW CHOOSEFONT; 
     610    alias FINDREPLACEW FINDREPLACE; 
     611    alias OPENFILENAMEW OPENFILENAME; 
     612    alias OFNOTIFYW OFNOTIFY; 
     613    alias PAGESETUPDLGW PAGESETUPDLG; 
     614    alias PRINTDLGW PRINTDLG; 
     615 
     616    alias ChooseColorW ChooseColor; 
     617    alias ChooseFontW ChooseFont; 
     618    alias FindTextW FindText; 
     619    alias GetFileTitleW GetFileTitle; 
     620    alias GetOpenFileNameW GetOpenFileName; 
     621    alias GetSaveFileNameW GetSaveFileName; 
     622    alias PageSetupDlgW PageSetupDlg; 
     623    alias PrintDlgW PrintDlg; 
     624    alias ReplaceTextW ReplaceText; 
     625 
     626    static if (WINVER >= 0x0500) { 
     627        alias PRINTDLGEXW PRINTDLGEX; 
     628        alias PrintDlgExW PrintDlgEx; 
     629    } // WINVER >= 0x0500 
     630 
     631} else { // UNICODE 
     632 
     633    alias CHOOSECOLORA CHOOSECOLOR; 
     634    alias CHOOSEFONTA CHOOSEFONT; 
     635    alias FINDREPLACEA FINDREPLACE; 
     636    alias OPENFILENAMEA OPENFILENAME; 
     637    alias OFNOTIFYA OFNOTIFY; 
     638    alias PAGESETUPDLGA PAGESETUPDLG; 
     639    alias PRINTDLGA PRINTDLG; 
     640 
     641    alias ChooseColorA ChooseColor; 
     642    alias ChooseFontA ChooseFont; 
     643    alias FindTextA FindText; 
     644    alias GetFileTitleA GetFileTitle; 
     645    alias GetOpenFileNameA GetOpenFileName; 
     646    alias GetSaveFileNameA GetSaveFileName; 
     647    alias PageSetupDlgA PageSetupDlg; 
     648    alias PrintDlgA PrintDlg; 
     649    alias ReplaceTextA ReplaceText; 
     650 
     651    static if (WINVER >= 0x0500) { 
     652        alias PRINTDLGEXA PRINTDLGEX; 
     653        alias PrintDlgExA PrintDlgEx; 
     654    } // WINVER >= 0x0500 
     655 
     656} // UNICODE 
     657 
     658alias CHOOSECOLOR* LPCHOOSECOLOR; 
     659alias CHOOSEFONT* LPCHOOSEFONT; 
     660alias FINDREPLACE* LPFINDREPLACE; 
     661alias OPENFILENAME* LPOPENFILENAME; 
     662alias OFNOTIFY* LPOFNOTIFY; 
     663alias PAGESETUPDLG* LPPAGESETUPDLG; 
     664alias PRINTDLG* LPPRINTDLG; 
    630665static if (WINVER >= 0x0500) { 
    631  
    632 alias PRINTDLGEXW PRINTDLGEX; 
    633 alias PrintDlgExW PrintDlgEx; 
    634 } /* WINVER >= 0x0500 */ 
    635  
    636 } else { /* UNICODE */ 
    637  
    638 alias CHOOSECOLORA CHOOSECOLOR; 
    639 alias CHOOSEFONTA CHOOSEFONT; 
    640 alias FINDREPLACEA FINDREPLACE; 
    641 alias OPENFILENAMEA OPENFILENAME; 
    642 alias OFNOTIFYA OFNOTIFY; 
    643 alias PAGESETUPDLGA PAGESETUPDLG; 
    644 alias PRINTDLGA PRINTDLG; 
    645  
    646 alias ChooseColorA ChooseColor; 
    647 alias ChooseFontA ChooseFont; 
    648 alias FindTextA FindText; 
    649 alias GetFileTitleA GetFileTitle; 
    650 alias GetOpenFileNameA GetOpenFileName; 
    651 alias GetSaveFileNameA GetSaveFileName; 
    652 alias PageSetupDlgA PageSetupDlg; 
    653 alias PrintDlgA PrintDlg; 
    654 alias ReplaceTextA ReplaceText; 
    655  
    656 static if (WINVER >= 0x0500) { 
    657  
    658 alias PRINTDLGEXA PRINTDLGEX; 
    659 alias PrintDlgExA PrintDlgEx; 
    660  
    661 } /* WINVER >= 0x0500 */ 
    662  
    663 } /* UNICODE */ 
    664  
    665 alias CHOOSECOLOR *LPCHOOSECOLOR; 
    666 alias CHOOSEFONT *LPCHOOSEFONT; 
    667 alias FINDREPLACE *LPFINDREPLACE; 
    668 alias OPENFILENAME *LPOPENFILENAME; 
    669 alias OFNOTIFY *LPOFNOTIFY; 
    670 alias PAGESETUPDLG *LPPAGESETUPDLG; 
    671 alias PRINTDLG *LPPRINTDLG; 
    672 static if (WINVER >= 0x0500) { 
    673 alias PRINTDLGEX *LPPRINTDLGEX; 
    674 
     666    alias PRINTDLGEX* LPPRINTDLGEX; 
     667
  • trunk/win32/core.d

    r126 r135  
    88/** 
    99 The core Windows API functions. 
    10   
     10 
    1111 Importing this file is equivalent to the C code: 
    1212 --- 
     
    1616 
    1717*/ 
    18  
    1918module win32.core; 
    2019 
    21 private import win32.w32api; 
    2220import win32.windef; 
    2321import win32.wincon; 
     
    3230// static if (_WIN32_WINNT_ONLY) import win32.winsvc; 
    3331version (Windows2003) { 
    34     version = WIN32_NT_ONLY; 
    35 } else version (WindowsXP) {  
    36     version = WIN32_NT_ONLY; 
     32    version = WIN32_WINNT_ONLY; 
     33} else version (WindowsXP) { 
     34    version = WIN32_WINNT_ONLY; 
    3735} else version (WindowsNTonly) { 
    38     version = WIN32_NT_ONLY; 
     36    version = WIN32_WINNT_ONLY; 
    3937} 
    40 version (WIN32_NT_ONLY) { 
     38 
     39version (WIN32_WINNT_ONLY) { 
    4140    import win32.winsvc; 
    4241} 
  • trunk/win32/d3d9types.d

    r123 r135  
    6565const D3DCS_PLANE4 = 0x0400; 
    6666const D3DCS_PLANE5 = 0x0800; 
    67 const D3DCS_ALL       = 0x0FFF; 
     67const D3DCS_ALL    = 0x0FFF; 
    6868 
    6969// FIXME: what's this? 
    70 //#define D3DDECL_END()    {0xff,0,D3DDECLTYPE_UNUSED,0,0,0} 
     70//#define D3DDECL_END()  {0xff,0,D3DDECLTYPE_UNUSED,0,0,0} 
    7171 
    7272const D3DDP_MAXTEXCOORD   = 8; 
     
    199199// FIXME: what are these? 
    200200/+ 
    201 #define D3DSINCOSCONST1    -1.5500992e-006f, -2.1701389e-005f, 0.0026041667f, 0.00026041668f 
    202 #define D3DSINCOSCONST2    -0.020833334f, -0.12500000f, 1.0f, 0.50000000f 
     201#define D3DSINCOSCONST1  -1.5500992e-006f, -2.1701389e-005f, 0.0026041667f, 0.00026041668f 
     202#define D3DSINCOSCONST2  -0.020833334f, -0.12500000f, 1.0f, 0.50000000f 
    203203+/ 
    204204 
  • trunk/win32/ddeml.d

    r127 r135  
    7575 
    7676/+ 
    77 #define TIMEOUT_ASYNC  0xFFFFFFFF 
    78 #define QID_SYNC   0xFFFFFFFF 
     77#define TIMEOUT_ASYNC  0xFFFFFFFF 
     78#define QID_SYNC       0xFFFFFFFF 
    7979+/ 
    8080 
     
    196196 
    197197struct HSZPAIR { 
    198     HSZ    hszSvc; 
    199     HSZ    hszTopic; 
     198    HSZ hszSvc; 
     199    HSZ hszTopic; 
    200200} 
    201201alias HSZPAIR* PHSZPAIR; 
  • trunk/win32/docobj.d

    r123 r135  
    7070} 
    7171 
    72 struct OLECMDTEXT
     72struct OLECMDTEXT
    7373    DWORD cmdtextf; 
    7474    ULONG cwActual; 
     
    7777} 
    7878 
    79 struct OLECMD
     79struct OLECMD
    8080    ULONG cmdID; 
    8181    DWORD cmdf; 
  • trunk/win32/httpext.d

    r99 r135  
    1414 
    1515enum { 
    16    HSE_VERSION_MAJOR       = 2, 
    17    HSE_VERSION_MINOR       = 0, 
    18    HSE_LOG_BUFFER_LEN      = 80, 
    19    HSE_MAX_EXT_DLL_NAME_LEN    = 256, 
    20    HSE_STATUS_SUCCESS      = 1, 
    21    HSE_STATUS_SUCCESS_AND_KEEP_CONN, 
    22    HSE_STATUS_PENDING     
    23    HSE_STATUS_ERROR       
    24    HSE_REQ_BASE            = 0, 
    25    HSE_REQ_SEND_URL_REDIRECT_RESP 
    26    HSE_REQ_SEND_URL       
    27    HSE_REQ_SEND_RESPONSE_HEADER   
    28    HSE_REQ_DONE_WITH_SESSION   
    29    HSE_REQ_SEND_RESPONSE_HEADER_EX = 1016, 
    30    HSE_REQ_END_RESERVED        = 1000, 
    31    HSE_TERM_ADVISORY_UNLOAD    = 0x00000001, 
    32    HSE_TERM_MUST_UNLOAD       
    33    HSE_IO_SYNC         = 0x00000001, 
    34    HSE_IO_ASYNC           
    35    HSE_IO_DISCONNECT_AFTER_SEND    = 0x00000004, 
    36    HSE_IO_SEND_HEADERS     = 0x00000008 
     16    HSE_VERSION_MAJOR               = 2, 
     17    HSE_VERSION_MINOR               = 0, 
     18    HSE_LOG_BUFFER_LEN              = 80, 
     19    HSE_MAX_EXT_DLL_NAME_LEN        = 256, 
     20    HSE_STATUS_SUCCESS              = 1, 
     21    HSE_STATUS_SUCCESS_AND_KEEP_CONN, 
     22    HSE_STATUS_PENDING
     23    HSE_STATUS_ERROR
     24    HSE_REQ_BASE                    = 0, 
     25    HSE_REQ_SEND_URL_REDIRECT_RESP
     26    HSE_REQ_SEND_URL
     27    HSE_REQ_SEND_RESPONSE_HEADER
     28    HSE_REQ_DONE_WITH_SESSION
     29    HSE_REQ_SEND_RESPONSE_HEADER_EX = 1016, 
     30    HSE_REQ_END_RESERVED            = 1000, 
     31    HSE_TERM_ADVISORY_UNLOAD        = 0x00000001, 
     32    HSE_TERM_MUST_UNLOAD
     33    HSE_IO_SYNC                     = 0x00000001, 
     34    HSE_IO_ASYNC
     35    HSE_IO_DISCONNECT_AFTER_SEND    = 0x00000004, 
     36    HSE_IO_SEND_HEADERS             = 0x00000008 
    3737} 
    3838 
    39 alias LPVOID HCONN; 
    40 struct _HSE_VERSION_INFO { 
     39alias HANDLE HCONN; 
     40 
     41struct HSE_VERSION_INFO { 
    4142    DWORD dwExtensionVersion; 
    4243    CHAR[HSE_MAX_EXT_DLL_NAME_LEN] lpszExtensionDesc; 
    4344} 
    44 alias _HSE_VERSION_INFO HSE_VERSION_INFO; 
    45 alias _HSE_VERSION_INFO* LPHSE_VERSION_INFO; 
     45alias HSE_VERSION_INFO* LPHSE_VERSION_INFO; 
    4646 
    47 struct _EXTENSION_CONTROL_BLOCK { 
    48     DWORD   cbSize; 
    49     DWORD   dwVersion; 
    50     HCONN   ConnID; 
    51     DWORD   dwHttpStatusCode; 
    52     CHAR    lpszLogData[HSE_LOG_BUFFER_LEN]; 
    53     LPSTR   lpszMethod; 
    54     LPSTR   lpszQueryString; 
    55     LPSTR   lpszPathInfo; 
    56     LPSTR   lpszPathTranslated; 
    57     DWORD   cbTotalBytes; 
    58     DWORD   cbAvailable; 
    59     LPBYTE  lpbData; 
    60     LPSTR   lpszContentType; 
    61     extern(Pascal) BOOL function(HCONN, LPSTR, LPVOID, LPDWORD) GetServerVariable; 
     47struct EXTENSION_CONTROL_BLOCK { 
     48    DWORD  cbSize = EXTENSION_CONTROL_BLOCK.sizeof; 
     49    DWORD  dwVersion; 
     50    HCONN  ConnID; 
     51    DWORD  dwHttpStatusCode; 
     52    CHAR[HSE_LOG_BUFFER_LEN] lpszLogData; 
     53    LPSTR  lpszMethod; 
     54    LPSTR  lpszQueryString; 
     55    LPSTR  lpszPathInfo; 
     56    LPSTR  lpszPathTranslated; 
     57    DWORD  cbTotalBytes; 
     58    DWORD  cbAvailable; 
     59    LPBYTE lpbData; 
     60    LPSTR  lpszContentType; 
     61    extern(Pascal) BOOL function(HCONN, LPSTR, LPVOID, LPDWORD) 
     62      GetServerVariable; 
    6263    extern(Pascal) BOOL function(HCONN, LPVOID, LPDWORD, DWORD) WriteClient; 
    6364    extern(Pascal) BOOL function(HCONN, LPVOID, LPDWORD) ReadClient; 
    64     extern(Pascal) BOOL function(HCONN, DWORD, LPVOID, LPDWORD, LPDWORD) ServerSupportFunction; 
     65    extern(Pascal) BOOL function(HCONN, DWORD, LPVOID, LPDWORD, LPDWORD) 
     66      ServerSupportFunction; 
    6567} 
    66 alias _EXTENSION_CONTROL_BLOCK EXTENSION_CONTROL_BLOCK; 
    67 alias _EXTENSION_CONTROL_BLOCK* LPEXTENSION_CONTROL_BLOCK; 
     68alias EXTENSION_CONTROL_BLOCK* LPEXTENSION_CONTROL_BLOCK; 
    6869 
    6970extern (Pascal) { 
     
    7475} 
    7576 
    76 struct _HSE_TF_INFO { 
     77struct HSE_TF_INFO { 
    7778    PFN_HSE_IO_COMPLETION pfnHseIO; 
    78     PVOID pContext; 
     79    PVOID pContext; 
    7980    HANDLE hFile; 
    8081    LPCSTR pszStatusCode; 
    81     DWORD BytesToWrite; 
    82     DWORD Offset; 
    83     PVOID pHead; 
    84     DWORD HeadLength; 
    85     PVOID pTail; 
    86     DWORD TailLength; 
    87     DWORD dwFlags; 
     82    DWORD BytesToWrite; 
     83    DWORD Offset; 
     84    PVOID pHead; 
     85    DWORD HeadLength; 
     86    PVOID pTail; 
     87    DWORD TailLength; 
     88    DWORD dwFlags; 
    8889} 
    89 alias _HSE_TF_INFO HSE_TF_INFO; 
    90 alias _HSE_TF_INFO* LPHSE_TF_INFO; 
     90alias HSE_TF_INFO* LPHSE_TF_INFO; 
    9191 
    92 struct _HSE_SEND_HEADER_EX_INFO { 
     92struct HSE_SEND_HEADER_EX_INFO { 
    9393    LPCSTR pszStatus; 
    9494    LPCSTR pszHeader; 
    95     DWORD cchStatus; 
    96     DWORD cchHeader; 
    97     BOOL fKeepConn; 
     95    DWORD cchStatus; 
     96    DWORD cchHeader; 
     97    BOOL   fKeepConn; 
    9898} 
    99 alias _HSE_SEND_HEADER_EX_INFO HSE_SEND_HEADER_EX_INFO; 
    100 alias _HSE_SEND_HEADER_EX_INFO* LPHSE_SEND_HEADER_EX_INF; 
     99alias HSE_SEND_HEADER_EX_INFO* LPHSE_SEND_HEADER_EX_INF; 
    101100 
    102101extern (Pascal) { 
  • trunk/win32/lm.d

    r127 r135  
    88*                       Placed into public domain                       * 
    99\***********************************************************************/ 
    10  
    1110module win32.lm; 
    1211 
    13 version (WindowsXP) { 
    14  version = WIN32_WINNT_ONLY; 
    15 } else version(Windows2000) { 
    16  version = WIN32_WINNT_ONLY; 
    17 } else version (Windows2003) { 
    18  version = WIN32_WINNT_ONLY; 
     12version (Windows2003) { 
     13   version = WIN32_WINNT_ONLY; 
     14} else version (WindowsXP) { 
     15   version = WIN32_WINNT_ONLY; 
     16} else version(WindowsNTonly) { 
     17   version = WIN32_WINNT_ONLY; 
    1918} 
    2019 
     
    3231 
    3332version (WIN32_WINNT_ONLY) { 
    34 import win32.lmwksta; 
    35 import win32.lmserver; 
     33   import win32.lmwksta; 
     34   import win32.lmserver; 
    3635} 
    3736import win32.lmstats; 
  • trunk/win32/lmerrlog.d

    r127 r135  
    198198const NELOG_NetlogonSessionTypeWrong=(ERRLOG2_BASE+70); 
    199199 
    200 struct ERROR_LOG
     200struct ERROR_LOG
    201201    DWORD el_len; 
    202202    DWORD el_reserved; 
     
    212212 
    213213extern (Windows) { 
    214 deprecated { 
    215 NET_API_STATUS NetErrorLogClear(LPCWSTR,LPCWSTR,LPBYTE); 
    216 NET_API_STATUS NetErrorLogRead(LPCWSTR,LPWSTR,LPHLOG,DWORD,LPDWORD,DWORD,DWORD,LPBYTE*,DWORD,LPDWORD,LPDWORD); 
    217 NET_API_STATUS NetErrorLogWrite(LPBYTE,DWORD,LPCWSTR,LPBYTE,DWORD,LPBYTE,DWORD,LPBYTE); 
     214    deprecated { 
     215        NET_API_STATUS NetErrorLogClear(LPCWSTR, LPCWSTR, LPBYTE); 
     216        NET_API_STATUS NetErrorLogRead(LPCWSTR, LPWSTR, LPHLOG, DWORD, 
     217          LPDWORD, DWORD, DWORD, LPBYTE*, DWORD, LPDWORD, LPDWORD); 
     218        NET_API_STATUS NetErrorLogWrite(LPBYTE, DWORD, LPCWSTR, LPBYTE, 
     219          DWORD, LPBYTE, DWORD, LPBYTE); 
     220    } 
    218221} 
    219 } 
  • trunk/win32/lmrepl.d

    r127 r135  
    1010module win32.lmrepl; 
    1111pragma(lib, "netapi32.lib"); 
     12 
    1213private import win32.lmcons; 
    1314private import win32.windef; 
     
    3637const REPL_EXPORT_EXTENT_INFOLEVEL    = PARMNUM_BASE_INFOLEVEL+1; 
    3738 
    38 struct REPL_INFO_0
     39struct REPL_INFO_0
    3940    DWORD rp0_role; 
    4041    LPWSTR rp0_exportpath; 
     
    7071alias REPL_INFO_1003* PREPL_INFO_1003, LPREPL_INFO_1003; 
    7172 
    72 struct REPL_EDIR_INFO_0
     73struct REPL_EDIR_INFO_0
    7374    LPWSTR rped0_dirname; 
    7475} 
    7576alias REPL_EDIR_INFO_0* PREPL_EDIR_INFO_0, LPREPL_EDIR_INFO_0; 
    7677 
    77 struct REPL_EDIR_INFO_1
     78struct REPL_EDIR_INFO_1
    7879    LPWSTR rped1_dirname; 
    7980    DWORD rped1_integrity; 
     
    8283alias REPL_EDIR_INFO_1* PREPL_EDIR_INFO_1, LPREPL_EDIR_INFO_1; 
    8384 
    84 struct REPL_EDIR_INFO_2
     85struct REPL_EDIR_INFO_2
    8586    LPWSTR rped2_dirname; 
    8687    DWORD rped2_integrity; 
     
    9192alias REPL_EDIR_INFO_2* PREPL_EDIR_INFO_2, LPREPL_EDIR_INFO_2; 
    9293 
    93 struct REPL_EDIR_INFO_1000
     94struct REPL_EDIR_INFO_1000
    9495    DWORD rped1000_integrity; 
    9596} 
    9697alias REPL_EDIR_INFO_1000* PREPL_EDIR_INFO_1000, LPREPL_EDIR_INFO_1000; 
    9798 
    98 struct REPL_EDIR_INFO_1001
     99struct REPL_EDIR_INFO_1001
    99100    DWORD rped1001_extent; 
    100101} 
     
    106107alias REPL_IDIR_INFO_0* PREPL_IDIR_INFO_0, LPREPL_IDIR_INFO_0; 
    107108 
    108 struct REPL_IDIR_INFO_1
     109struct REPL_IDIR_INFO_1
    109110    LPWSTR rpid1_dirname; 
    110111    DWORD rpid1_state; 
  • trunk/win32/lmserver.d

    r121 r135  
    1313private import win32.windef; 
    1414 
    15 struct SERVER_INFO_100
    16     DWORD  sv100_platform_id; 
    17     LPWSTR sv100_name; 
     15struct SERVER_INFO_100
     16    DWORD  sv100_platform_id; 
     17    LPWSTR sv100_name; 
    1818} 
    1919alias SERVER_INFO_100* PSERVER_INFO_100, LPSERVER_INFO_100; 
    2020 
    21 struct SERVER_INFO_101
    22     DWORD  sv101_platform_id; 
    23     LPWSTR sv101_name; 
    24     DWORD  sv101_version_major; 
    25     DWORD  sv101_version_minor; 
    26     DWORD  sv101_type; 
    27     LPWSTR sv101_comment; 
     21struct SERVER_INFO_101
     22    DWORD  sv101_platform_id; 
     23    LPWSTR sv101_name; 
     24    DWORD  sv101_version_major; 
     25    DWORD  sv101_version_minor; 
     26    DWORD  sv101_type; 
     27    LPWSTR sv101_comment; 
    2828} 
    2929alias SERVER_INFO_101* PSERVER_INFO_101, LPSERVER_INFO_101; 
    3030 
    31 struct SERVER_INFO_102
    32     DWORD  sv102_platform_id; 
    33     LPWSTR sv102_name; 
    34     DWORD  sv102_version_major; 
    35     DWORD  sv102_version_minor; 
    36     DWORD  sv102_type; 
    37     LPWSTR sv102_comment; 
    38     DWORD  sv102_users; 
    39     LONG   sv102_disc; 
    40     BOOL   sv102_hidden; 
    41     DWORD  sv102_announce; 
    42     DWORD  sv102_anndelta; 
    43     DWORD  sv102_licenses; 
    44     LPWSTR sv102_userpath; 
     31struct SERVER_INFO_102
     32    DWORD  sv102_platform_id; 
     33    LPWSTR sv102_name; 
     34    DWORD  sv102_version_major; 
     35    DWORD  sv102_version_minor; 
     36    DWORD  sv102_type; 
     37    LPWSTR sv102_comment; 
     38    DWORD  sv102_users; 
     39    LONG   sv102_disc; 
     40    BOOL   sv102_hidden; 
     41    DWORD  sv102_announce; 
     42    DWORD  sv102_anndelta; 
     43    DWORD  sv102_licenses; 
     44    LPWSTR sv102_userpath; 
    4545} 
    4646alias SERVER_INFO_102* PSERVER_INFO_102, LPSERVER_INFO_102; 
    4747 
    48 struct SERVER_INFO_402
    49     DWORD  sv402_ulist_mtime; 
    50     DWORD  sv402_glist_mtime; 
    51     DWORD  sv402_alist_mtime; 
    52     LPWSTR sv402_alerts; 
    53     DWORD  sv402_security; 
    54     DWORD  sv402_numadmin; 
    55     DWORD  sv402_lanmask; 
    56     LPWSTR sv402_guestacct; 
    57     DWORD  sv402_chdevs; 
    58     DWORD  sv402_chdevq; 
    59     DWORD  sv402_chdevjobs; 
    60     DWORD  sv402_connections; 
    61     DWORD  sv402_shares; 
    62     DWORD  sv402_openfiles; 
    63     DWORD  sv402_sessopens; 
    64     DWORD  sv402_sessvcs; 
    65     DWORD  sv402_sessreqs; 
    66     DWORD  sv402_opensearch; 
    67     DWORD  sv402_activelocks; 
    68     DWORD  sv402_numreqbuf; 
    69     DWORD  sv402_sizreqbuf; 
    70     DWORD  sv402_numbigbuf; 
    71     DWORD  sv402_numfiletasks; 
    72     DWORD  sv402_alertsched; 
    73     DWORD  sv402_erroralert; 
    74     DWORD  sv402_logonalert; 
    75     DWORD  sv402_accessalert; 
    76     DWORD  sv402_diskalert; 
    77     DWORD  sv402_netioalert; 
    78     DWORD  sv402_maxauditsz; 
    79     LPWSTR sv402_srvheuristics; 
     48struct SERVER_INFO_402
     49    DWORD  sv402_ulist_mtime; 
     50    DWORD  sv402_glist_mtime; 
     51    DWORD  sv402_alist_mtime; 
     52    LPWSTR sv402_alerts; 
     53    DWORD  sv402_security; 
     54    DWORD  sv402_numadmin; 
     55    DWORD  sv402_lanmask; 
     56    LPWSTR sv402_guestacct; 
     57    DWORD  sv402_chdevs; 
     58    DWORD  sv402_chdevq; 
     59    DWORD  sv402_chdevjobs; 
     60    DWORD  sv402_connections; 
     61    DWORD  sv402_shares; 
     62    DWORD  sv402_openfiles; 
     63    DWORD  sv402_sessopens; 
     64    DWORD  sv402_sessvcs; 
     65    DWORD  sv402_sessreqs; 
     66    DWORD  sv402_opensearch; 
     67    DWORD  sv402_activelocks; 
     68    DWORD  sv402_numreqbuf; 
     69    DWORD  sv402_sizreqbuf; 
     70    DWORD  sv402_numbigbuf; 
     71    DWORD  sv402_numfiletasks; 
     72    DWORD  sv402_alertsched; 
     73    DWORD  sv402_erroralert; 
     74    DWORD  sv402_logonalert; 
     75    DWORD  sv402_accessalert; 
     76    DWORD  sv402_diskalert; 
     77    DWORD  sv402_netioalert; 
     78    DWORD  sv402_maxauditsz; 
     79    LPWSTR sv402_srvheuristics; 
    8080} 
    8181alias SERVER_INFO_402* PSERVER_INFO_402, LPSERVER_INFO_402; 
    8282 
    83 struct SERVER_INFO_403
    84     DWORD  sv403_ulist_mtime; 
    85     DWORD  sv403_glist_mtime; 
    86     DWORD  sv403_alist_mtime; 
    87     LPWSTR sv403_alerts; 
    88     DWORD  sv403_security; 
    89     DWORD  sv403_numadmin; 
    90     DWORD  sv403_lanmask; 
    91     LPWSTR sv403_guestacct; 
    92     DWORD  sv403_chdevs; 
    93     DWORD  sv403_chdevq; 
    94     DWORD  sv403_chdevjobs; 
    95     DWORD  sv403_connections; 
    96     DWORD  sv403_shares; 
    97     DWORD  sv403_openfiles; 
    98     DWORD  sv403_sessopens; 
    99     DWORD  sv403_sessvcs; 
    100     DWORD  sv403_sessreqs; 
    101     DWORD  sv403_opensearch; 
    102     DWORD  sv403_activelocks; 
    103     DWORD  sv403_numreqbuf; 
    104     DWORD  sv403_sizreqbuf; 
    105     DWORD  sv403_numbigbuf; 
    106     DWORD  sv403_numfiletasks; 
    107     DWORD  sv403_alertsched; 
    108     DWORD  sv403_erroralert; 
    109     DWORD  sv403_logonalert; 
    110     DWORD  sv403_accessalert; 
    111     DWORD  sv403_diskalert; 
    112     DWORD  sv403_netioalert; 
    113     DWORD  sv403_maxauditsz; 
    114     LPWSTR sv403_srvheuristics; 
    115     DWORD  sv403_auditedevents; 
    116     DWORD  sv403_autoprofile; 
    117     LPWSTR sv403_autopath; 
     83struct SERVER_INFO_403
     84    DWORD  sv403_ulist_mtime; 
     85    DWORD  sv403_glist_mtime; 
     86    DWORD  sv403_alist_mtime; 
     87    LPWSTR sv403_alerts; 
     88    DWORD  sv403_security; 
     89    DWORD  sv403_numadmin; 
     90    DWORD  sv403_lanmask; 
     91    LPWSTR sv403_guestacct; 
     92    DWORD  sv403_chdevs; 
     93    DWORD  sv403_chdevq; 
     94    DWORD  sv403_chdevjobs; 
     95    DWORD  sv403_connections; 
     96    DWORD  sv403_shares; 
     97    DWORD  sv403_openfiles; 
     98    DWORD  sv403_sessopens; 
     99    DWORD  sv403_sessvcs; 
     100    DWORD  sv403_sessreqs; 
     101    DWORD  sv403_opensearch; 
     102    DWORD  sv403_activelocks; 
     103    DWORD  sv403_numreqbuf; 
     104    DWORD  sv403_sizreqbuf; 
     105    DWORD  sv403_numbigbuf; 
     106    DWORD  sv403_numfiletasks; 
     107    DWORD  sv403_alertsched; 
     108    DWORD  sv403_erroralert; 
     109    DWORD  sv403_logonalert; 
     110    DWORD  sv403_accessalert; 
     111    DWORD  sv403_diskalert; 
     112    DWORD  sv403_netioalert; 
     113    DWORD  sv403_maxauditsz; 
     114    LPWSTR sv403_srvheuristics; 
     115    DWORD  sv403_auditedevents; 
     116    DWORD  sv403_autoprofile; 
     117    LPWSTR sv403_autopath; 
    118118} 
    119119alias SERVER_INFO_403* PSERVER_INFO_403, LPSERVER_INFO_403; 
    120120 
    121 struct SERVER_INFO_502
    122     DWORD  sv502_sessopens; 
    123     DWORD  sv502_sessvcs; 
    124     DWORD  sv502_opensearch; 
    125     DWORD  sv502_sizreqbuf; 
    126     DWORD  sv502_initworkitems; 
    127     DWORD  sv502_maxworkitems; 
    128     DWORD  sv502_rawworkitems; 
    129     DWORD  sv502_irpstacksize; 
    130     DWORD  sv502_maxrawbuflen; 
    131     DWORD  sv502_sessusers; 
    132     DWORD  sv502_sessconns; 
    133     DWORD  sv502_maxpagedmemoryusage; 
    134     DWORD  sv502_maxnonpagedmemoryusage; 
    135     BOOL   sv502_enablesoftcompat; 
    136     BOOL   sv502_enableforcedlogoff; 
    137     BOOL   sv502_timesource; 
    138     BOOL   sv502_acceptdownlevelapis; 
    139     BOOL   sv502_lmannounce; 
     121struct SERVER_INFO_502
     122    DWORD sv502_sessopens; 
     123    DWORD sv502_sessvcs; 
     124    DWORD sv502_opensearch; 
     125    DWORD sv502_sizreqbuf; 
     126    DWORD sv502_initworkitems; 
     127    DWORD sv502_maxworkitems; 
     128    DWORD sv502_rawworkitems; 
     129    DWORD sv502_irpstacksize; 
     130    DWORD sv502_maxrawbuflen; 
     131    DWORD sv502_sessusers; 
     132    DWORD sv502_sessconns; 
     133    DWORD sv502_maxpagedmemoryusage; 
     134    DWORD sv502_maxnonpagedmemoryusage; 
     135    BOOL  sv502_enablesoftcompat; 
     136    BOOL  sv502_enableforcedlogoff; 
     137    BOOL  sv502_timesource; 
     138    BOOL  sv502_acceptdownlevelapis; 
     139    BOOL  sv502_lmannounce; 
    140140} 
    141141alias SERVER_INFO_502* PSERVER_INFO_502, LPSERVER_INFO_502; 
    142142 
    143 struct SERVER_INFO_503
    144     DWORD  sv503_sessopens; 
    145     DWORD  sv503_sessvcs; 
    146     DWORD  sv503_opensearch; 
    147     DWORD  sv503_sizreqbuf; 
    148     DWORD  sv503_initworkitems; 
    149     DWORD  sv503_maxworkitems; 
    150     DWORD  sv503_rawworkitems; 
    151     DWORD  sv503_irpstacksize; 
    152     DWORD  sv503_maxrawbuflen; 
    153     DWORD  sv503_sessusers; 
    154     DWORD  sv503_sessconns; 
    155     DWORD  sv503_maxpagedmemoryusage; 
    156     DWORD  sv503_maxnonpagedmemoryusage; 
    157     BOOL   sv503_enablesoftcompat; 
    158     BOOL   sv503_enableforcedlogoff; 
    159     BOOL   sv503_timesource; 
    160     BOOL   sv503_acceptdownlevelapis; 
    161     BOOL   sv503_lmannounce; 
    162     LPWSTR sv503_domain; 
    163     DWORD  sv503_maxcopyreadlen; 
    164     DWORD  sv503_maxcopywritelen; 
    165     DWORD  sv503_minkeepsearch; 
    166     DWORD  sv503_maxkeepsearch; 
    167     DWORD  sv503_minkeepcomplsearch; 
    168     DWORD  sv503_maxkeepcomplsearch; 
    169     DWORD  sv503_threadcountadd; 
    170     DWORD  sv503_numblockthreads; 
    171     DWORD  sv503_scavtimeout; 
    172     DWORD  sv503_minrcvqueue; 
    173     DWORD  sv503_minfreeworkitems; 
    174     DWORD  sv503_xactmemsize; 
    175     DWORD  sv503_threadpriority; 
    176     DWORD  sv503_maxmpxct; 
    177     DWORD  sv503_oplockbreakwait; 
    178     DWORD  sv503_oplockbreakresponsewait; 
    179     BOOL   sv503_enableoplocks; 
    180     BOOL   sv503_enableoplockforceclose; 
    181     BOOL   sv503_enablefcbopens; 
    182     BOOL   sv503_enableraw; 
    183     BOOL   sv503_enablesharednetdrives; 
    184     DWORD  sv503_minfreeconnections; 
    185     DWORD  sv503_maxfreeconnections; 
     143struct SERVER_INFO_503
     144    DWORD  sv503_sessopens; 
     145    DWORD  sv503_sessvcs; 
     146    DWORD  sv503_opensearch; 
     147    DWORD  sv503_sizreqbuf; 
     148    DWORD  sv503_initworkitems; 
     149    DWORD  sv503_maxworkitems; 
     150    DWORD  sv503_rawworkitems; 
     151    DWORD  sv503_irpstacksize; 
     152    DWORD  sv503_maxrawbuflen; 
     153    DWORD  sv503_sessusers; 
     154    DWORD  sv503_sessconns; 
     155    DWORD  sv503_maxpagedmemoryusage; 
     156    DWORD  sv503_maxnonpagedmemoryusage; 
     157    BOOL   sv503_enablesoftcompat; 
     158    BOOL   sv503_enableforcedlogoff; 
     159    BOOL   sv503_timesource; 
     160    BOOL   sv503_acceptdownlevelapis; 
     161    BOOL   sv503_lmannounce; 
     162    LPWSTR sv503_domain; 
     163    DWORD  sv503_maxcopyreadlen; 
     164    DWORD  sv503_maxcopywritelen; 
     165    DWORD  sv503_minkeepsearch; 
     166    DWORD  sv503_maxkeepsearch; 
     167    DWORD  sv503_minkeepcomplsearch; 
     168    DWORD  sv503_maxkeepcomplsearch; 
     169    DWORD  sv503_threadcountadd; 
     170    DWORD  sv503_numblockthreads; 
     171    DWORD  sv503_scavtimeout; 
     172    DWORD  sv503_minrcvqueue; 
     173    DWORD  sv503_minfreeworkitems; 
     174    DWORD  sv503_xactmemsize; 
     175    DWORD  sv503_threadpriority; 
     176    DWORD  sv503_maxmpxct; 
     177    DWORD  sv503_oplockbreakwait; 
     178    DWORD  sv503_oplockbreakresponsewait; 
     179    BOOL   sv503_enableoplocks; 
     180    BOOL   sv503_enableoplockforceclose; 
     181    BOOL   sv503_enablefcbopens; 
     182    BOOL   sv503_enableraw; 
     183    BOOL   sv503_enablesharednetdrives; 
     184    DWORD  sv503_minfreeconnections; 
     185    DWORD  sv503_maxfreeconnections; 
    186186} 
    187187alias SERVER_INFO_503* PSERVER_INFO_503, LPSERVER_INFO_503; 
    188188 
    189 struct SERVER_INFO_599
    190     DWORD  sv599_sessopens; 
    191     DWORD  sv599_sessvcs; 
    192     DWORD  sv599_opensearch; 
    193     DWORD  sv599_sizreqbuf; 
    194     DWORD  sv599_initworkitems; 
    195     DWORD  sv599_maxworkitems; 
    196     DWORD  sv599_rawworkitems; 
    197     DWORD  sv599_irpstacksize; 
    198     DWORD  sv599_maxrawbuflen; 
    199     DWORD  sv599_sessusers; 
    200     DWORD  sv599_sessconns; 
    201     DWORD  sv599_maxpagedmemoryusage; 
    202     DWORD  sv599_maxnonpagedmemoryusage; 
    203     BOOL   sv599_enablesoftcompat; 
    204     BOOL   sv599_enableforcedlogoff; 
    205     BOOL   sv599_timesource; 
    206     BOOL   sv599_acceptdownlevelapis; 
    207     BOOL   sv599_lmannounce; 
    208     LPWSTR sv599_domain; 
    209     DWORD  sv599_maxcopyreadlen; 
    210     DWORD  sv599_maxcopywritelen; 
    211     DWORD  sv599_minkeepsearch; 
    212     DWORD  sv599_maxkeepsearch; 
    213     DWORD  sv599_minkeepcomplsearch; 
    214     DWORD  sv599_maxkeepcomplsearch; 
    215     DWORD  sv599_threadcountadd; 
    216     DWORD  sv599_numblockthreads; 
    217     DWORD  sv599_scavtimeout; 
    218     DWORD  sv599_minrcvqueue; 
    219     DWORD  sv599_minfreeworkitems; 
    220     DWORD  sv599_xactmemsize; 
    221     DWORD  sv599_threadpriority; 
    222     DWORD  sv599_maxmpxct; 
    223     DWORD  sv599_oplockbreakwait; 
    224     DWORD  sv599_oplockbreakresponsewait; 
    225     BOOL   sv599_enableoplocks; 
    226     BOOL   sv599_enableoplockforceclose; 
    227     BOOL   sv599_enablefcbopens; 
    228     BOOL   sv599_enableraw; 
    229     BOOL   sv599_enablesharednetdrives; 
    230     DWORD  sv599_minfreeconnections; 
    231     DWORD  sv599_maxfreeconnections; 
    232     DWORD  sv599_initsesstable; 
    233     DWORD  sv599_initconntable; 
    234     DWORD  sv599_initfiletable; 
    235     DWORD  sv599_initsearchtable; 
    236     DWORD  sv599_alertschedule; 
    237     DWORD  sv599_errorthreshold; 
    238     DWORD  sv599_networkerrorthreshold; 
    239     DWORD  sv599_diskspacethreshold; 
    240     DWORD  sv599_reserved; 
    241     DWORD  sv599_maxlinkdelay; 
    242     DWORD  sv599_minlinkthroughput; 
    243     DWORD  sv599_linkinfovalidtime; 
    244     DWORD  sv599_scavqosinfoupdatetime; 
    245     DWORD  sv599_maxworkitemidletime; 
     189struct SERVER_INFO_599
     190    DWORD  sv599_sessopens; 
     191    DWORD  sv599_sessvcs; 
     192    DWORD  sv599_opensearch; 
     193    DWORD  sv599_sizreqbuf; 
     194    DWORD  sv599_initworkitems; 
     195    DWORD  sv599_maxworkitems; 
     196    DWORD  sv599_rawworkitems; 
     197    DWORD  sv599_irpstacksize; 
     198    DWORD  sv599_maxrawbuflen; 
     199    DWORD  sv599_sessusers; 
     200    DWORD  sv599_sessconns; 
     201    DWORD  sv599_maxpagedmemoryusage; 
     202    DWORD  sv599_maxnonpagedmemoryusage; 
     203    BOOL   sv599_enablesoftcompat; 
     204    BOOL   sv599_enableforcedlogoff; 
     205    BOOL   sv599_timesource; 
     206    BOOL   sv599_acceptdownlevelapis; 
     207    BOOL   sv599_lmannounce; 
     208    LPWSTR sv599_domain; 
     209    DWORD  sv599_maxcopyreadlen; 
     210    DWORD  sv599_maxcopywritelen; 
     211    DWORD  sv599_minkeepsearch; 
     212    DWORD  sv599_maxkeepsearch; 
     213    DWORD  sv599_minkeepcomplsearch; 
     214    DWORD  sv599_maxkeepcomplsearch; 
     215    DWORD  sv599_threadcountadd; 
     216    DWORD  sv599_numblockthreads; 
     217    DWORD  sv599_scavtimeout; 
     218    DWORD  sv599_minrcvqueue; 
     219    DWORD  sv599_minfreeworkitems; 
     220    DWORD  sv599_xactmemsize; 
     221    DWORD  sv599_threadpriority; 
     222    DWORD  sv599_maxmpxct; 
     223    DWORD  sv599_oplockbreakwait; 
     224    DWORD  sv599_oplockbreakresponsewait; 
     225    BOOL   sv599_enableoplocks; 
     226    BOOL   sv599_enableoplockforceclose; 
     227    BOOL   sv599_enablefcbopens; 
     228    BOOL   sv599_enableraw; 
     229    BOOL   sv599_enablesharednetdrives; 
     230    DWORD  sv599_minfreeconnections; 
     231    DWORD  sv599_maxfreeconnections; 
     232    DWORD  sv599_initsesstable; 
     233    DWORD  sv599_initconntable; 
     234    DWORD  sv599_initfiletable; 
     235    DWORD  sv599_initsearchtable; 
     236    DWORD  sv599_alertschedule; 
     237    DWORD  sv599_errorthreshold; 
     238    DWORD  sv599_networkerrorthreshold; 
     239    DWORD  sv599_diskspacethreshold; 
     240    DWORD  sv599_reserved; 
     241    DWORD  sv599_maxlinkdelay; 
     242    DWORD  sv599_minlinkthroughput; 
     243    DWORD  sv599_linkinfovalidtime; 
     244    DWORD  sv599_scavqosinfoupdatetime; 
     245    DWORD  sv599_maxworkitemidletime; 
    246246} 
    247247alias SERVER_INFO_599* PSERVER_INFO_599, LPSERVER_INFO_599; 
    248248 
    249 struct SERVER_INFO_598
    250     DWORD  sv598_maxrawworkitems; 
    251     DWORD  sv598_maxthreadsperqueue; 
    252     DWORD  sv598_producttype; 
    253     DWORD  sv598_serversize; 
    254     DWORD  sv598_connectionlessautodisc; 
    255     DWORD  sv598_sharingviolationretries; 
    256     DWORD  sv598_sharingviolationdelay; 
    257     DWORD  sv598_maxglobalopensearch; 
    258     DWORD  sv598_removeduplicatesearches; 
    259     DWORD  sv598_lockviolationoffset; 
    260     DWORD  sv598_lockviolationdelay; 
    261     DWORD  sv598_mdlreadswitchover; 
    262     DWORD  sv598_cachedopenlimit; 
    263     DWORD  sv598_otherqueueaffinity; 
    264     BOOL   sv598_restrictnullsessaccess; 
    265     BOOL   sv598_enablewfw311directipx; 
    266     DWORD  sv598_queuesamplesecs; 
    267     DWORD  sv598_balancecount; 
    268     DWORD  sv598_preferredaffinity; 
    269     DWORD  sv598_maxfreerfcbs; 
    270     DWORD  sv598_maxfreemfcbs; 
    271     DWORD  sv598_maxfreelfcbs; 
    272     DWORD  sv598_maxfreepagedpoolchunks; 
    273     DWORD  sv598_minpagedpoolchunksize; 
    274     DWORD  sv598_maxpagedpoolchunksize; 
    275     BOOL   sv598_sendsfrompreferredprocessor; 
     249struct SERVER_INFO_598
     250    DWORD sv598_maxrawworkitems; 
     251    DWORD sv598_maxthreadsperqueue; 
     252    DWORD sv598_producttype; 
     253    DWORD sv598_serversize; 
     254    DWORD sv598_connectionlessautodisc; 
     255    DWORD sv598_sharingviolationretries; 
     256    DWORD sv598_sharingviolationdelay; 
     257    DWORD sv598_maxglobalopensearch; 
     258    DWORD sv598_removeduplicatesearches; 
     259    DWORD sv598_lockviolationoffset; 
     260    DWORD sv598_lockviolationdelay; 
     261    DWORD sv598_mdlreadswitchover; 
     262    DWORD sv598_cachedopenlimit; 
     263    DWORD sv598_otherqueueaffinity; 
     264    BOOL  sv598_restrictnullsessaccess; 
     265    BOOL  sv598_enablewfw311directipx; 
     266    DWORD sv598_queuesamplesecs; 
     267    DWORD sv598_balancecount; 
     268    DWORD sv598_preferredaffinity; 
     269    DWORD sv598_maxfreerfcbs; 
     270    DWORD sv598_maxfreemfcbs; 
     271    DWORD sv598_maxfreelfcbs; 
     272    DWORD sv598_maxfreepagedpoolchunks; 
     273    DWORD sv598_minpagedpoolchunksize; 
     274    DWORD sv598_maxpagedpoolchunksize; 
     275    BOOL  sv598_sendsfrompreferredprocessor; 
    276276} 
    277277alias SERVER_INFO_598* PSERVER_INFO_598, LPSERVER_INFO_598; 
     
    337337alias SERVER_INFO_1510* PSERVER_INFO_1510, LPSERVER_INFO_1510; 
    338338 
    339 struct SERVER_INFO_1511 {  
     339struct SERVER_INFO_1511 { 
    340340    DWORD sv1511_sessconns; 
    341341} alias SERVER_INFO_1511* PSERVER_INFO_1511, LPSERVER_INFO_1511; 
     
    671671alias SERVER_INFO_1586* PSERVER_INFO_1586, LPSERVER_INFO_1586; 
    672672 
    673 struct SERVER_TRANSPORT_INFO_0{ 
    674     DWORD svti0_numberofvcs; 
    675     LPWSTR  svti0_transportname; 
    676     PBYTE   svti0_transportaddress; 
    677     DWORD   svti0_transportaddresslength; 
    678     LPWSTR  svti0_networkaddress; 
    679 
    680 alias SERVER_TRANSPORT_INFO_0* PSERVER_TRANSPORT_INFO_0, LPSERVER_TRANSPORT_INFO_0; 
     673struct SERVER_TRANSPORT_INFO_0 { 
     674    DWORD  svti0_numberofvcs; 
     675    LPWSTR svti0_transportname; 
     676    PBYTE  svti0_transportaddress; 
     677    DWORD  svti0_transportaddresslength; 
     678    LPWSTR svti0_networkaddress; 
     679
     680alias SERVER_TRANSPORT_INFO_0* PSERVER_TRANSPORT_INFO_0, 
     681  LPSERVER_TRANSPORT_INFO_0; 
    681682 
    682683extern (Windows): 
  • trunk/win32/lmsvc.d

    r127 r135  
    2020private import win32.windef; 
    2121 
    22 const TCHAR [] SERVICE_DOS_ENCRYPTION = "ENCRYPT"; 
     22const TCHAR[] SERVICE_DOS_ENCRYPTION = "ENCRYPT"; 
    2323 
    2424const SERVICE_UNINSTALLED=0; 
     
    116116const SERVICE_UIC_M_DATABASE_ERROR = SERVICE2_BASE+2; 
    117117 
    118 struct SERVICE_INFO_0
     118struct SERVICE_INFO_0
    119119    LPWSTR svci0_name; 
    120120} 
    121121alias SERVICE_INFO_0* PSERVICE_INFO_0, LPSERVICE_INFO_0; 
    122122 
    123 struct SERVICE_INFO_1
     123struct SERVICE_INFO_1
    124124    LPWSTR svci1_name; 
    125125    DWORD svci1_status; 
     
    129129alias SERVICE_INFO_1* PSERVICE_INFO_1, LPSERVICE_INFO_1; 
    130130 
    131 struct SERVICE_INFO_2
     131struct SERVICE_INFO_2
    132132    LPWSTR svci2_name; 
    133133    DWORD svci2_status; 
     
    141141 
    142142extern (Windows) { 
    143 deprecated { 
    144 NET_API_STATUS NetServiceControl(LPCWSTR,LPCWSTR,DWORD,DWORD,PBYTE*); 
    145 NET_API_STATUS NetServiceEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); 
    146 NET_API_STATUS NetServiceGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*); 
    147 NET_API_STATUS NetServiceInstall(LPCWSTR,LPCWSTR,DWORD,LPCWSTR*,PBYTE*); 
     143    deprecated { 
     144        NET_API_STATUS NetServiceControl(LPCWSTR, LPCWSTR, DWORD, DWORD, 
     145          PBYTE*); 
     146        NET_API_STATUS NetServiceEnum(LPCWSTR, DWORD, PBYTE*, DWORD, PDWORD, 
     147          PDWORD, PDWORD); 
     148        NET_API_STATUS NetServiceGetInfo(LPCWSTR, LPCWSTR, DWORD, PBYTE*); 
     149        NET_API_STATUS NetServiceInstall(LPCWSTR, LPCWSTR, DWORD, LPCWSTR*, 
     150          PBYTE*); 
     151    } 
    148152} 
    149 
    150 //MACRO #define SERVICE_IP_CODE(t,n) ((long)SERVICE_IP_QUERY_HINT|(long)(n|(t<<SERVICE_IP_WAITTIME_SHIFT))) 
    151 //MACRO #define SERVICE_CCP_CODE(t,n) ((long)SERVICE_CCP_QUERY_HINT|(long)(n|(t<<SERVICE_IP_WAITTIME_SHIFT))) 
    152 //MACRO #define SERVICE_UIC_CODE(c,m) ((long)(((long)c<<16)|(long)(USHORT)m)) 
    153 //MACRO #define SERVICE_NT_CCP_CODE(t,n) (((long)SERVICE_CCP_QUERY_HINT)|((long)(n))|(((t)&LOWER_HINT_MASK)<<SERVICE_IP_WAITTIME_SHIFT)|(((t)&UPPER_HINT_MASK)<<SERVICE_NTIP_WAITTIME_SHIFT)) 
     153//MACRO #define SERVICE_IP_CODE(t, n) ((long)SERVICE_IP_QUERY_HINT|(long)(n|(t<<SERVICE_IP_WAITTIME_SHIFT))) 
     154//MACRO #define SERVICE_CCP_CODE(t, n) ((long)SERVICE_CCP_QUERY_HINT|(long)(n|(t<<SERVICE_IP_WAITTIME_SHIFT))) 
     155//MACRO #define SERVICE_UIC_CODE(c, m) ((long)(((long)c<<16)|(long)(USHORT)m)) 
     156//MACRO #define SERVICE_NT_CCP_CODE(t, n) (((long)SERVICE_CCP_QUERY_HINT)|((long)(n))|(((t)&LOWER_HINT_MASK)<<SERVICE_IP_WAITTIME_SHIFT)|(((t)&UPPER_HINT_MASK)<<SERVICE_NTIP_WAITTIME_SHIFT)) 
    154157//MACRO #define SERVICE_NT_WAIT_GET(c) ((((c)&UPPER_GET_HINT_MASK)>>SERVICE_NTIP_WAITTIME_SHIFT)|(((c)&LOWER_GET_HINT_MASK)>>SERVICE_IP_WAITTIME_SHIFT)) 
  • trunk/win32/mmsystem.d

    r127 r135  
    507507} 
    508508 
    509 const DWORD  
     509const DWORD 
    510510    JOY_RETURNX        = 0x00000001, 
    511511    JOY_RETURNY        = 0x00000002, 
     
    665665    MCIERR_DEVICE_LENGTH, 
    666666    MCIERR_DEVICE_ORD_LENGTH, 
    667     MCIERR_NO_INTEGER, // = MCIERR_BASE + 56  
     667    MCIERR_NO_INTEGER, // = MCIERR_BASE + 56 
    668668    MCIERR_WAVE_OUTPUTSINUSE = MCIERR_BASE + 64, 
    669669    MCIERR_WAVE_SETOUTPUTINUSE, 
     
    14841484struct MIXERCONTROLDETAILS_UNSIGNED { 
    14851485    DWORD dwValue; 
    1486 }  
     1486} 
    14871487alias MIXERCONTROLDETAILS_UNSIGNED* PMIXERCONTROLDETAILS_UNSIGNED, LPMIXERCONTROLDETAILS_UNSIGNED; 
    14881488 
     
    21402140alias MCI_OVLY_LOAD_PARMSW* PMCI_OVLY_LOAD_PARMSW, LPMCI_OVLY_LOAD_PARMSW; 
    21412141 
    2142 version(Unicode) {  
     2142version(Unicode) { 
    21432143    alias WAVEOUTCAPSW WAVEOUTCAPS; 
    21442144    alias WAVEINCAPSW WAVEINCAPS; 
     
    21642164    alias MCI_OVLY_WINDOW_PARMSW MCI_OVLY_WINDOW_PARMS; 
    21652165    alias MCI_OVLY_SAVE_PARMSW MCI_OVLY_SAVE_PARMS; 
    2166      
     2166 
    21672167    alias sndPlaySoundW sndPlaySound; 
    21682168    alias PlaySoundW PlaySound; 
     
    22152215    alias MCI_OVLY_WINDOW_PARMSA MCI_OVLY_WINDOW_PARMS; 
    22162216    alias MCI_OVLY_SAVE_PARMSA MCI_OVLY_SAVE_PARMS; 
    2217      
     2217 
    22182218    alias sndPlaySoundA sndPlaySound; 
    22192219    alias PlaySoundA PlaySound; 
  • trunk/win32/objbase.d

    r127 r135  
    6969    USHORT reserved; 
    7070    ULONG ulSectorSize; 
    71     WCHAR *pwcsTemplateFile; 
     71    WCHAR* pwcsTemplateFile; 
    7272} 
    7373 
     
    8686 
    8787enum COINIT { 
    88     COINIT_APARTMENTTHREADED   = 0x2, 
    89     COINIT_MULTITHREADED       = 0x0, 
    90     COINIT_DISABLE_OLE1DDE     = 0x4, 
    91     COINIT_SPEED_OVER_MEMORY   = 0x
     88    COINIT_APARTMENTTHREADED = 2, 
     89    COINIT_MULTITHREADED     = 0, 
     90    COINIT_DISABLE_OLE1DDE   = 4, 
     91    COINIT_SPEED_OVER_MEMORY =
    9292} 
    9393 
    9494enum STDMSHLFLAGS { 
    95     SMEXF_SERVER  = 0x01, 
    96     SMEXF_HANDLER = 0x02 
     95    SMEXF_SERVER  = 1, 
     96    SMEXF_HANDLER 
    9797} 
    9898 
    9999extern(Windows) { 
    100100 
    101 alias HRESULT function (REFCLSID,REFIID,PVOID*) LPFNGETCLASSOBJECT; 
    102 alias HRESULT function () LPFNCANUNLOADNOW; 
     101alias HRESULT function(REFCLSID,REFIID,PVOID*) LPFNGETCLASSOBJECT; 
     102alias HRESULT function() LPFNCANUNLOADNOW; 
    103103 
    104104DWORD CoBuildVersion(); 
  • trunk/win32/objfwd.d

    r123 r135  
    1313/+ 
    1414// Forward declararions are not necessary in D. 
    15 extern(Windows)
     15extern(Windows)
    1616    interface IMoniker; 
    1717    interface IStream; 
  • trunk/win32/objidl.d

    r123 r135  
    138138 
    139139struct MULTI_QI { 
    140     IID* pIID; 
     140    IID*      pIID; 
    141141    IUnknown* pItf; 
    142     HRESULT    hr; 
     142    HRESULT   hr; 
    143143} 
    144144 
  • trunk/win32/ocidl.d

    r123 r135  
    6767 
    6868enum PROPBAG2_TYPE { 
    69     PROPBAG2_TYPE_UNDEFINED    = 0
    70     PROPBAG2_TYPE_DATA = 1
    71     PROPBAG2_TYPE_URL = 2
    72     PROPBAG2_TYPE_OBJECT = 3
    73     PROPBAG2_TYPE_STREAM = 4
    74     PROPBAG2_TYPE_STORAGE = 5
    75     PROPBAG2_TYPE_MONIKER = 6 
     69    PROPBAG2_TYPE_UNDEFINED
     70    PROPBAG2_TYPE_DATA
     71    PROPBAG2_TYPE_URL
     72    PROPBAG2_TYPE_OBJECT
     73    PROPBAG2_TYPE_STREAM
     74    PROPBAG2_TYPE_STORAGE
     75    PROPBAG2_TYPE_MONIKER // = 6 
    7676} 
    7777 
  • trunk/win32/oleacc.d

    r127 r135  
    88*                       Placed into public domain                       * 
    99\***********************************************************************/ 
    10  
    1110module win32.oleacc; 
    1211pragma(lib, "oleacc.lib"); 
     12 
    1313private import win32.oaidl; 
    1414private import win32.wtypes; 
     
    171171    HRESULT GetIDsOfNames(REFIID,LPOLESTR*,UINT,LCID,DISPID*); 
    172172    HRESULT Invoke(DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*); 
    173      
     173 
    174174    HRESULT get_accParent(IDispatch**); 
    175175    HRESULT get_accChildCount(int*); 
     
    186186    HRESULT get_accSelection(VARIANT*); 
    187187    HRESULT get_accDefaultAction(VARIANT, BSTR*); 
    188      
     188 
    189189    HRESULT accSelect(int, VARIANT); 
    190190    HRESULT accLocation(int*, int*, int*, int*, VARIANT); 
     
    192192    HRESULT accHitTest(int, int, VARIANT*); 
    193193    HRESULT accDoDefaultAction(VARIANT); 
    194      
     194 
    195195    HRESULT put_accName(VARIANT, BSTR); 
    196196    HRESULT put_accValue(VARIANT, BSTR); 
  • trunk/win32/oleauto.d

    r127 r135  
    88*                       Placed into public domain                       * 
    99\***********************************************************************/ 
    10  
    1110module win32.oleauto; 
    1211pragma(lib, "oleaut32.lib"); 
     12 
    1313import win32.oaidl; 
    1414private import win32.wtypes; 
  • trunk/win32/olectl.d

    r111 r135  
    88*                       Placed into public domain                       * 
    99\***********************************************************************/ 
    10 // In conversion from MinGW, the following was deleted:  
     10// In conversion from MinGW, the following was deleted: 
    1111//#define FONTSIZE(n) {n##0000,0} 
    1212 
     
    3333} 
    3434 
    35 template STD_CTL_SCODE(int c)  
     35template STD_CTL_SCODE(int c) 
    3636{ 
    3737  const SCODE STD_CTL_SCODE = (SEVERITY_ERROR << 31) | (FACILITY_CONTROL << 16) | c; 
     
    9494    CONNECT_E_CANNOTCONNECT   = CONNECT_E_FIRST + 2, 
    9595    CONNECT_E_OVERRIDDEN      = CONNECT_E_FIRST + 3, 
    96      
     96 
    9797    SELFREG_E_FIRST           = ITF_ERROR_SCODE_FOR_D!(0x200), 
    9898    SELFREG_E_LAST            = ITF_ERROR_SCODE_FOR_D!(0x20F), 
    9999    SELFREG_S_FIRST           = ITF_SUCCESS_SCODE_FOR_D!(0x200), 
    100     SELFREG_S_LAST            = ITF_SUCCESS_SCODE_FOR_D!(0x20F),    
     100    SELFREG_S_LAST            = ITF_SUCCESS_SCODE_FOR_D!(0x20F), 
    101101    SELFREG_E_TYPELIB         = SELFREG_E_FIRST + 0, 
    102102    SELFREG_E_CLASS           = SELFREG_E_FIRST + 1, 
    103      
     103 
    104104    PERPROP_E_FIRST           = ITF_ERROR_SCODE_FOR_D!(0x200), 
    105105    PERPROP_E_LAST            = ITF_ERROR_SCODE_FOR_D!(0x20F), 
     
    327327} 
    328328 
    329 struct OCPFIPARAMS
     329struct OCPFIPARAMS
    330330    ULONG cbStructSize; 
    331331    HWND hWndOwner; 
     
    342342alias OCPFIPARAMS* LPOCPFIPARAMS; 
    343343 
    344 struct FONTDESC
     344struct FONTDESC
    345345    UINT cbSizeofstruct; 
    346346    LPOLESTR lpstrName; 
  • trunk/win32/oledlg.d

    r123 r135  
    339339} 
    340340 
    341 struct OLEUIINSERTOBJECTW
     341struct OLEUIINSERTOBJECTW
    342342    DWORD cbStruct; 
    343343    DWORD dwFlags; 
     
    365365alias OLEUIINSERTOBJECTW* POLEUIINSERTOBJECTW, LPOLEUIINSERTOBJECTW; 
    366366 
    367 struct OLEUIINSERTOBJECTA
     367struct OLEUIINSERTOBJECTA
    368368    DWORD cbStruct; 
    369369    DWORD dwFlags; 
     
    394394UINT OleUIInsertObjectA(LPOLEUIINSERTOBJECTA); 
    395395 
    396 enum OLEUIPASTEFLAG
     396enum OLEUIPASTEFLAG
    397397    OLEUIPASTE_PASTEONLY, 
    398398    OLEUIPASTE_LINKTYPE1, 
     
    409409} 
    410410 
    411 struct OLEUIPASTEENTRYW
     411struct OLEUIPASTEENTRYW
    412412    FORMATETC fmtetc; 
    413413    LPCWSTR lpstrFormatName; 
     
    418418alias OLEUIPASTEENTRYW* POLEUIPASTEENTRYW, LPOLEUIPASTEENTRYW; 
    419419 
    420 struct OLEUIPASTEENTRYA
     420struct OLEUIPASTEENTRYA
    421421    FORMATETC fmtetc; 
    422422    LPCSTR lpstrFormatName; 
     
    427427alias OLEUIPASTEENTRYA* POLEUIPASTEENTRYA, LPOLEUIPASTEENTRYA; 
    428428 
    429 struct OLEUIPASTESPECIALW
     429struct OLEUIPASTESPECIALW
    430430    DWORD cbStruct; 
    431431    DWORD dwFlags; 
     
    451451alias OLEUIPASTESPECIALW* POLEUIPASTESPECIALW, LPOLEUIPASTESPECIALW; 
    452452 
    453 struct OLEUIPASTESPECIALA
     453struct OLEUIPASTESPECIALA
    454454    DWORD cbStruct; 
    455455    DWORD dwFlags; 
     
    507507alias IOleUILinkContainerA* LPOLEUILINKCONTAINERA; 
    508508 
    509 struct OLEUIEDITLINKSW
     509struct OLEUIEDITLINKSW
    510510    DWORD cbStruct; 
    511511    DWORD dwFlags; 
     
    521521alias OLEUIEDITLINKSW* POLEUIEDITLINKSW, LPOLEUIEDITLINKSW; 
    522522 
    523 struct OLEUIEDITLINKSA
     523struct OLEUIEDITLINKSA
    524524    DWORD cbStruct; 
    525525    DWORD dwFlags; 
     
    535535alias OLEUIEDITLINKSA* POLEUIEDITLINKSA, LPOLEUIEDITLINKSA; 
    536536 
    537 struct OLEUICHANGEICONW
     537struct OLEUICHANGEICONW
    538538    DWORD cbStruct; 
    539539    DWORD dwFlags; 
     
    552552alias OLEUICHANGEICONW* POLEUICHANGEICONW, LPOLEUICHANGEICONW; 
    553553 
    554 struct OLEUICHANGEICONA
     554struct OLEUICHANGEICONA
    555555    DWORD cbStruct; 
    556556    DWORD dwFlags; 
     
    569569alias OLEUICHANGEICONA* POLEUICHANGEICONA, LPOLEUICHANGEICONA; 
    570570 
    571 struct OLEUICONVERTW
     571struct OLEUICONVERTW
    572572    DWORD cbStruct; 
    573573    DWORD dwFlags; 
     
    595595alias OLEUICONVERTW* POLEUICONVERTW, LPOLEUICONVERTW; 
    596596 
    597 struct OLEUICONVERTA
     597struct OLEUICONVERTA
    598598    DWORD cbStruct; 
    599599    DWORD dwFlags; 
     
    621621alias OLEUICONVERTA* POLEUICONVERTA, LPOLEUICONVERTA; 
    622622 
    623 struct OLEUIBUSYW
     623struct OLEUIBUSYW
    624624    DWORD cbStruct; 
    625625    DWORD dwFlags; 
     
    636636alias OLEUIBUSYW* POLEUIBUSYW, LPOLEUIBUSYW; 
    637637 
    638 struct OLEUIBUSYA
     638struct OLEUIBUSYA
    639639    DWORD cbStruct; 
    640640    DWORD dwFlags; 
     
    651651alias OLEUIBUSYA* POLEUIBUSYA, LPOLEUIBUSYA; 
    652652 
    653 struct OLEUICHANGESOURCEW
     653struct OLEUICHANGESOURCEW
    654654    DWORD cbStruct; 
    655655    DWORD dwFlags; 
     
    672672alias OLEUICHANGESOURCEW* POLEUICHANGESOURCEW, LPOLEUICHANGESOURCEW; 
    673673 
    674 struct OLEUICHANGESOURCEA
     674struct OLEUICHANGESOURCEA
    675675    DWORD cbStruct; 
    676676    DWORD dwFlags; 
     
    753753alias IOleUILinkInfoA* LPOLEUILINKINFOA; 
    754754 
    755 struct OLEUIGNRLPROPSW
     755struct OLEUIGNRLPROPSW
    756756    DWORD cbStruct; 
    757757    DWORD dwFlags; 
     
    764764alias OLEUIGNRLPROPSW* POLEUIGNRLPROPSW, LPOLEUIGNRLPROPSW; 
    765765 
    766 struct OLEUIGNRLPROPSA
     766struct OLEUIGNRLPROPSA
    767767    DWORD cbStruct; 
    768768    DWORD dwFlags; 
     
    775775alias OLEUIGNRLPROPSA* POLEUIGNRLPROPSA, LPOLEUIGNRLPROPSA; 
    776776 
    777 struct OLEUIVIEWPROPSW
     777struct OLEUIVIEWPROPSW
    778778    DWORD cbStruct; 
    779779    DWORD dwFlags; 
     
    788788alias OLEUIVIEWPROPSW* POLEUIVIEWPROPSW, LPOLEUIVIEWPROPSW; 
    789789 
    790 struct OLEUIVIEWPROPSA
     790struct OLEUIVIEWPROPSA
    791791    DWORD cbStruct; 
    792792    DWORD dwFlags; 
     
    801801alias OLEUIVIEWPROPSA* POLEUIVIEWPROPSA, LPOLEUIVIEWPROPSA; 
    802802 
    803 struct OLEUILINKPROPSW
     803struct OLEUILINKPROPSW
    804804    DWORD cbStruct; 
    805805    DWORD dwFlags; 
     
    812812alias OLEUILINKPROPSW* POLEUILINKPROPSW, LPOLEUILINKPROPSW; 
    813813 
    814 struct OLEUILINKPROPSA
     814struct OLEUILINKPROPSA
    815815    DWORD cbStruct; 
    816816    DWORD dwFlags; 
     
    823823alias OLEUILINKPROPSA*  POLEUILINKPROPSA, LPOLEUILINKPROPSA; 
    824824 
    825 struct OLEUIOBJECTPROPSW
     825struct OLEUIOBJECTPROPSW
    826826    DWORD cbStruct; 
    827827    DWORD dwFlags; 
     
    837837alias OLEUIOBJECTPROPSW* POLEUIOBJECTPROPSW, LPOLEUIOBJECTPROPSW; 
    838838 
    839 struct OLEUIOBJECTPROPSA
     839struct OLEUIOBJECTPROPSA
    840840    DWORD cbStruct; 
    841841    DWORD dwFlags; 
  • trunk/win32/prsht.d

    r127 r135  
    1212pragma(lib, "comctl32.lib"); 
    1313private import win32.w32api; 
    14 private import win32.windef;  
     14private import win32.windef; 
    1515private import win32.winuser; 
    1616 
     
    220220 
    221221struct PROPSHEETPAGEW { 
    222     DWORD dwSize = PROPSHEETPAGEW.sizeof; 
    223     DWORD dwFlags; 
    224     HINSTANCE  hInstance; 
     222    DWORD     dwSize = PROPSHEETPAGEW.sizeof; 
     223    DWORD     dwFlags; 
     224    HINSTANCE hInstance; 
    225225    union { 
    226226        LPCWSTR        pszTemplate; 
     
    231231        LPCWSTR pszIcon; 
    232232    } 
    233     LPCWSTR pszTitle; 
    234     DLGPROC pfnDlgProc; 
    235     LPARAM  lParam; 
     233    LPCWSTR   pszTitle; 
     234    DLGPROC   pfnDlgProc; 
     235    LPARAM    lParam; 
    236236    LPFNPSPCALLBACKW pfnCallback; 
    237     UINT* pcRefParent; 
     237    UINT*     pcRefParent; 
    238238    static if (_WIN32_IE >= 0x0400) { 
    239239        LPCWSTR pszHeaderTitle; 
     
    280280 
    281281struct PROPSHEETHEADERW { 
    282     DWORD dwSize = PROPSHEETHEADERW.sizeof; 
    283     DWORD dwFlags; 
    284     HWND  hwndParent; 
    285     HINSTANCE  hInstance; 
     282    DWORD     dwSize = PROPSHEETHEADERW.sizeof; 
     283    DWORD     dwFlags; 
     284    HWND      hwndParent; 
     285    HINSTANCE hInstance; 
    286286    union { 
    287287        HICON   hIcon; 
    288288        LPCWSTR pszIcon; 
    289289    } 
    290     LPCWSTR pszCaption; 
    291     UINT    nPages; 
     290    LPCWSTR   pszCaption; 
     291    UINT      nPages; 
    292292    union { 
    293293        UINT    nStartPage; 
     
    346346} else { 
    347347    alias LPFNPSPCALLBACKA         LPFNPSPCALLBACK; 
    348     alias PROPSHEETPAGEA           PROPSHEETPAGE;   
     348    alias PROPSHEETPAGEA           PROPSHEETPAGE; 
    349349    alias LPPROPSHEETPAGEA         LPPROPSHEETPAGE; 
    350350    alias LPCPROPSHEETPAGEA        LPCPROPSHEETPAGE; 
     
    367367 
    368368BOOL PropSheet_AddPage(HWND hPropSheetDlg, HPROPSHEETPAGE hpage) { 
    369         return cast(BOOL)SendMessage(hPropSheetDlg,PSM_ADDPAGE,0,cast(LPARAM)hpage);  
     369        return cast(BOOL)SendMessage(hPropSheetDlg,PSM_ADDPAGE,0,cast(LPARAM)hpage); 
    370370} 
    371371 
  • trunk/win32/regstr.d

    r114 r135  
    130130const APMMENUSUSPEND_NOCHANGE = 128; 
    131131 
    132 const TCHAR[]  
     132const TCHAR[] 
    133133    REGSTR_KEY_CLASS = "Class", 
    134134    REGSTR_KEY_CONFIG = "Config", 
     
    192192    REGSTR_PATH_INSTALLEDFILES = "System\\CurrentControlSet\\Control\\InstalledFiles", 
    193193    REGSTR_PATH_VMM32FILES = "System\\CurrentControlSet\\Control\\VMM32Files", 
    194      
     194 
    195195    REGSTR_VAL_BITSPERPIXEL = "BitsPerPixel", 
    196196    REGSTR_VAL_RESOLUTION = "Resolution", 
     
    227227    REGSTR_VAL_INSTALLTYPE = "InstallType", 
    228228    REGSTR_VAL_WRAPPER = "Wrapper", 
    229      
     229 
    230230    REGSTR_KEY_SETUP = "\\Setup", 
    231231    REGSTR_VAL_BOOTDIR = "BootDir", 
     
    249249    REGSTR_VAL_STDDOSOPTION = "StdOption", 
    250250    REGSTR_VAL_DOSOPTTIP = "TipText", 
    251      
     251 
    252252    REGSTR_VAL_DOSPAGER = "DOSPager", 
    253253    REGSTR_VAL_VXDGROUPS = "VXDGroups", 
     
    365365    REGSTR_PCI_OPTIONS = "Options", 
    366366    REGSTR_PCI_DUAL_IDE = "PCIDualIDE", 
    367      
     367 
    368368    REGSTR_KEY_CRASHES = "Crashes", 
    369369    REGSTR_KEY_DANGERS = "Dangers", 
     
    427427    REGSTR_MACHTYPE_ZENITH_PC = "Zenith PC", 
    428428    REGSTR_VAL_APMMENUSUSPEND = "APMMenuSuspend", 
    429      
     429 
    430430    REGSTR_VAL_BUSTYPE = "BusType", 
    431431    REGSTR_VAL_CPU = "CPU", 
     
    537537    REGSTR_VAL_DPI = "dpi", 
    538538    REGSTR_VAL_PCICOPTIONS = "PCICOptions", 
    539      
     539 
    540540    REGSTR_VAL_PCICIRQMAP = "PCICIRQMap", 
    541541    REGSTR_PATH_APPEARANCE = "Control Panel\\Appearance", 
     
    800800// #endif 
    801801 
    802 struct DSKTLSYSTEMTIME
     802struct DSKTLSYSTEMTIME
    803803    WORD wYear; 
    804804    WORD wMonth; 
  • trunk/win32/richedit.d

    r127 r135  
    1212private import win32.winuser; 
    1313private import win32.wingdi; // for LF_FACESIZE 
     14 
    1415align(4): 
    1516 
    1617version(Unicode) { 
    17     const wchar [] RICHEDIT_CLASS = "RichEdit20W"; 
     18    const wchar[] RICHEDIT_CLASS = "RichEdit20W"; 
    1819} else { 
    19     const char [] RICHEDIT_CLASS  = "RichEdit20A"; 
     20    const char[] RICHEDIT_CLASS  = "RichEdit20A"; 
    2021} 
    2122 
     
    2728    CF_RETEXTOBJ = "RichEdit Text and Objects"; 
    2829 
    29 const DWORD  
     30const DWORD 
    3031    CFM_BOLD        = 1, 
    3132    CFM_ITALIC      = 2, 
     
    5152    CFE_SUPERSCRIPT = 0x00020000, 
    5253    CFE_AUTOCOLOR   = 0x40000000; 
    53      
    54 const CFM_EFFECTS = CFM_BOLD | CFM_ITALIC | CFM_UNDERLINE | CFM_COLOR | CFM_STRIKEOUT | CFE_PROTECTED | CFM_LINK; 
    55  
    56 // flags for EM_SETIMEOPTIONS  
     54 
     55const CFM_EFFECTS = CFM_BOLD | CFM_ITALIC | CFM_UNDERLINE | CFM_COLOR 
     56  | CFM_STRIKEOUT | CFE_PROTECTED | CFM_LINK; 
     57 
     58// flags for EM_SETIMEOPTIONS 
    5759const LPARAM 
    5860    IMF_FORCENONE         = 1, 
     
    308310    char szFaceName[LF_FACESIZE]; 
    309311} 
    310 struct CHARFORMATW
     312struct CHARFORMATW
    311313    UINT cbSize; 
    312314    DWORD dwMask; 
     
    369371} 
    370372 
    371 struct COMPCOLOR
     373struct COMPCOLOR
    372374    COLORREF crText; 
    373375    COLORREF crBackground; 
     
    385387} 
    386388 
    387 struct ENCORRECTTEXT
     389struct ENCORRECTTEXT
    388390    NMHDR nmhdr; 
    389391    CHARRANGE chrg; 
     
    391393} 
    392394 
    393 struct ENDROPFILES
     395struct ENDROPFILES
    394396    NMHDR nmhdr; 
    395397    HANDLE hDrop; 
     
    413415} 
    414416 
    415 struct ENPROTECTED
     417struct ENPROTECTED
    416418    NMHDR nmhdr; 
    417419    UINT msg; 
     
    422424alias ENPROTECTED* LPENPROTECTED; 
    423425 
    424 struct ENSAVECLIPBOARD
     426struct ENSAVECLIPBOARD
    425427    NMHDR nmhdr; 
    426428    LONG cObjectCount; 
     
    428430} 
    429431 
    430 struct FINDTEXTA
     432struct FINDTEXTA
    431433    CHARRANGE chrg; 
    432434    LPSTR lpstrText; 
     
    438440} 
    439441 
    440 struct FINDTEXTEXA
     442struct FINDTEXTEXA
    441443    CHARRANGE chrg; 
    442444    LPSTR lpstrText; 
     
    444446} 
    445447 
    446 struct FINDTEXTEXW
     448struct FINDTEXTEXW
    447449    CHARRANGE chrg; 
    448450    LPWSTR lpstrText; 
     
    458460} 
    459461 
    460 struct MSGFILTER
     462struct MSGFILTER
    461463    NMHDR nmhdr; 
    462464    UINT msg; 
     
    465467} 
    466468 
    467 struct PARAFORMAT
     469struct PARAFORMAT
    468470    UINT cbSize; 
    469471    DWORD dwMask; 
     
    478480} 
    479481 
    480 struct PARAFORMAT2
     482struct PARAFORMAT2
    481483    UINT cbSize; 
    482484    DWORD dwMask; 
     
    511513} 
    512514 
    513 struct TEXTRANGEA
     515struct TEXTRANGEA
    514516    CHARRANGE chrg; 
    515517    LPSTR lpstrText; 
    516518} 
    517519 
    518 struct TEXTRANGEW
     520struct TEXTRANGEW
    519521    CHARRANGE chrg; 
    520522    LPWSTR lpstrText; 
    521523} 
    522524 
    523 struct REQRESIZE
     525struct REQRESIZE
    524526    NMHDR nmhdr; 
    525527    RECT rc; 
     
    531533} 
    532534 
    533 struct PUNCTUATION
     535struct PUNCTUATION
    534536    UINT iSize; 
    535537    LPSTR szPunctuation; 
  • trunk/win32/richole.d

    r114 r135  
    5151 
    5252extern (C) { 
    53 extern GUID IID_IRichEditOle; 
    54 extern GUID IID_IRichEditOleCallback; 
     53   extern GUID IID_IRichEditOle; 
     54   extern GUID IID_IRichEditOleCallback; 
    5555} 
    5656 
    5757struct REOBJECT { 
    58     DWORD cbStruct
    59     LONG   cp; 
    60     CLSID  clsid; 
    61     LPOLEOBJECT    poleobj; 
    62     LPSTORAGE  pstg; 
    63     LPOLECLIENTSITE    polesite; 
    64     SIZEL  sizel; 
    65     DWORD  dvaspect; 
    66     DWORD  dwFlags; 
    67     DWORD  dwUser; 
     58    DWORD           cbStruct = REOBJECT.sizeof
     59    LONG            cp; 
     60    CLSID           clsid; 
     61    LPOLEOBJECT     poleobj; 
     62    LPSTORAGE       pstg; 
     63    LPOLECLIENTSITE polesite; 
     64    SIZEL           sizel; 
     65    DWORD           dvaspect; 
     66    DWORD           dwFlags; 
     67    DWORD           dwUser; 
    6868} 
    6969 
    70 interface IRichEditOle : public IUnknown 
    71 
    72     HRESULT QueryInterface(REFIID,PVOID*); 
    73     ULONG AddRef(); 
    74     ULONG Release(); 
     70interface IRichEditOle : public IUnknown { 
    7571    HRESULT GetClientSite(LPOLECLIENTSITE*); 
    7672    LONG GetObjectCount(); 
    7773    LONG GetLinkCount(); 
    78     HRESULT GetObject(LONG, REOBJECT*,DWORD); 
     74    HRESULT GetObject(LONG, REOBJECT*, DWORD); 
    7975    HRESULT InsertObject(REOBJECT*); 
    80     HRESULT ConvertObject(LONG,REFCLSID,LPCSTR); 
    81     HRESULT ActivateAs(REFCLSID,REFCLSID); 
    82     HRESULT SetHostNames(LPCSTR,LPCSTR); 
    83     HRESULT SetLinkAvailable(LONG,BOOL); 
    84     HRESULT SetDvaspect(LONG,DWORD); 
     76    HRESULT ConvertObject(LONG, REFCLSID, LPCSTR); 
     77    HRESULT ActivateAs(REFCLSID, REFCLSID); 
     78    HRESULT SetHostNames(LPCSTR, LPCSTR); 
     79    HRESULT SetLinkAvailable(LONG, BOOL); 
     80    HRESULT SetDvaspect(LONG, DWORD); 
    8581    HRESULT HandsOffStorage(LONG); 
    86     HRESULT SaveCompleted(LONG,LPSTORAGE); 
     82    HRESULT SaveCompleted(LONG, LPSTORAGE); 
    8783    HRESULT InPlaceDeactivate(); 
    8884    HRESULT ContextSensitiveHelp(BOOL); 
    89     HRESULT GetClipboardData(CHARRANGE*,DWORD,LPDATAOBJECT*); 
    90     HRESULT ImportDataObject(LPDATAOBJECT,CLIPFORMAT,HGLOBAL); 
     85    HRESULT GetClipboardData(CHARRANGE*, DWORD, LPDATAOBJECT*); 
     86    HRESULT ImportDataObject(LPDATAOBJECT, CLIPFORMAT, HGLOBAL); 
    9187}; 
    92 alias IRichEditOle *LPRICHEDITOLE; 
     88alias IRichEditOle* LPRICHEDITOLE; 
    9389 
    94 interface IRichEditOleCallback : public IUnknown 
    95 
    96     HRESULT QueryInterface(REFIID,PVOID*); 
    97     ULONG AddRef(); 
    98     ULONG Release(); 
     90interface IRichEditOleCallback : public IUnknown { 
    9991    HRESULT GetNewStorage(LPSTORAGE*); 
    100     HRESULT GetInPlaceContext(LPOLEINPLACEFRAME*,LPOLEINPLACEUIWINDOW*,LPOLEINPLACEFRAMEINFO); 
     92    HRESULT GetInPlaceContext(LPOLEINPLACEFRAME*, LPOLEINPLACEUIWINDOW*, LPOLEINPLACEFRAMEINFO); 
    10193    HRESULT ShowContainerUI(BOOL); 
    102     HRESULT QueryInsertObject(LPCLSID,LPSTORAGE,LONG); 
     94    HRESULT QueryInsertObject(LPCLSID, LPSTORAGE, LONG); 
    10395    HRESULT DeleteObject(LPOLEOBJECT); 
    104     HRESULT QueryAcceptData(LPDATAOBJECT,CLIPFORMAT*,DWORD,BOOL,HGLOBAL); 
     96    HRESULT QueryAcceptData(LPDATAOBJECT, CLIPFORMAT*, DWORD, BOOL, HGLOBAL); 
    10597    HRESULT ContextSensitiveHelp(BOOL); 
    106     HRESULT GetClipboardData(CHARRANGE*,DWORD,LPDATAOBJECT*); 
    107     HRESULT GetDragDropEffect(BOOL,DWORD,PDWORD); 
    108     HRESULT GetContextMenu(WORD,LPOLEOBJECT,CHARRANGE*,HMENU*); 
     98    HRESULT GetClipboardData(CHARRANGE*, DWORD, LPDATAOBJECT*); 
     99    HRESULT GetDragDropEffect(BOOL, DWORD, PDWORD); 
     100    HRESULT GetContextMenu(WORD, LPOLEOBJECT, CHARRANGE*, HMENU*); 
    109101}; 
    110 alias IRichEditOleCallback * LPRICHEDITOLECALLBACK; 
    111  
    112 align: 
     102alias IRichEditOleCallback* LPRICHEDITOLECALLBACK; 
  • trunk/win32/rpcdce.d

    r127 r135  
    11/***********************************************************************\ 
    2 *                                rpcdce.d                               * 
     2*                             rpcdce.d                                  * 
    33*                                                                       * 
    4 *                       Windows API header module                       * 
     4*                    Windows API header module                          * 
    55*                                                                       * 
    6 *                 Translated from MinGW Windows headers                 * 
     6*              Translated from MinGW Windows headers                    * 
    77*                                                                       * 
    8 *                       Placed into public domain                       * 
     8*                    Placed into public domain                          * 
    99\***********************************************************************/ 
    10 // TODO: I think MinGW got this wrong. RPC_UNICODE_SUPPORTED should be replaced aliases for version(Unicode) 
    11  
     10// TODO: I think MinGW got this wrong. RPC_UNICODE_SUPPORTED should be 
     11// replaced aliases for version(Unicode) 
    1212module win32.rpcdce; 
    1313pragma(lib, "Rpcrt4.lib"); 
    14 private import win32.basetyps; 
    15 private import win32.w32api; 
     14 
    1615public import win32.rpcdcep; 
     16private import win32.basetyps, win32.w32api, win32.windef; 
    1717 
    1818// FIXME: clean up Windows version support 
     
    2020alias UUID uuid_t; 
    2121alias UUID_VECTOR uuid_vector_t; 
    22  
    2322alias void RPC_MGR_EPV; 
     23 
    2424// for RpcMgmtSetComTimeout() 
    2525enum : uint { 
     
    115115alias RPC_BINDING_HANDLE handle_t; 
    116116 
    117 struct RPC_BINDING_VECTOR
     117struct RPC_BINDING_VECTOR
    118118    uint Count; 
    119119    RPC_BINDING_HANDLE BindingH[1]; 
     
    124124 
    125125 
    126 struct UUID_VECTOR
     126struct UUID_VECTOR
    127127    uint Count; 
    128     UUID *Uuid[1]; 
    129 } 
    130  
    131 alias void * RPC_IF_HANDLE; 
    132  
    133 struct RPC_IF_ID
     128    UUID* Uuid[1]; 
     129} 
     130 
     131alias void* RPC_IF_HANDLE; 
     132 
     133struct RPC_IF_ID
    134134    UUID Uuid; 
    135135    ushort VersMajor; 
     
    137137} 
    138138 
    139 struct RPC_POLICY
    140     uint Length
    141     uint EndpointFlags
    142     uint NICFlags
    143 } 
    144 alias RPC_POLICY * PRPC_POLICY; 
     139struct RPC_POLICY
     140    uint Length
     141    uint EndpointFlags
     142    uint NICFlags
     143} 
     144alias RPC_POLICY* PRPC_POLICY; 
    145145 
    146146extern (Windows) { 
    147 alias void function(UUID*,UUID*,RPC_STATUS*) RPC_OBJECT_INQ_FN; 
    148 alias RPC_STATUS function (RPC_IF_HANDLE,void*) RPC_IF_CALLBACK_FN; 
    149 } 
    150  
    151 struct RPC_STATS_VECTOR
    152     uint Count; 
    153     uint Stats[1]
     147   alias void function(UUID*, UUID*, RPC_STATUS*) RPC_OBJECT_INQ_FN; 
     148   alias RPC_STATUS function(RPC_IF_HANDLE, void*) RPC_IF_CALLBACK_FN; 
     149} 
     150 
     151struct RPC_STATS_VECTOR
     152    uint    Count; 
     153    uint[1] Stats
    154154} 
    155155 
    156156struct RPC_IF_ID_VECTOR { 
    157     uint Count; 
    158     RPC_IF_ID*IfId[1]; 
    159 
    160 alias void * RPC_AUTH_IDENTITY_HANDLE; 
    161 alias void * RPC_AUTHZ_HANDLE; 
    162  
    163 struct RPC_SECURITY_QOS{ 
     157    uint          Count; 
     158    RPC_IF_ID*[1] IfId; 
     159
     160alias HANDLE RPC_AUTH_IDENTITY_HANDLE, RPC_AUTHZ_HANDLE; 
     161 
     162struct RPC_SECURITY_QOS { 
    164163    uint Version; 
    165164    uint Capabilities; 
     
    167166    uint ImpersonationType; 
    168167} 
    169 alias RPC_SECURITY_QOS * PRPC_SECURITY_QOS; 
    170  
    171 struct SEC_WINNT_AUTH_IDENTITY_W
    172     ushort *User; 
     168alias RPC_SECURITY_QOS* PRPC_SECURITY_QOS; 
     169 
     170struct SEC_WINNT_AUTH_IDENTITY_W
     171    ushort* User; 
    173172    uint UserLength; 
    174     ushort *Domain; 
     173    ushort* Domain; 
    175174    uint DomainLength; 
    176     ushort *Password; 
     175    ushort* Password; 
    177176    uint PasswordLength; 
    178177    uint Flags; 
    179178} 
    180 alias SEC_WINNT_AUTH_IDENTITY_W * PSEC_WINNT_AUTH_IDENTITY_W; 
    181  
    182 struct SEC_WINNT_AUTH_IDENTITY_A
    183     ubyte *User; 
     179alias SEC_WINNT_AUTH_IDENTITY_W* PSEC_WINNT_AUTH_IDENTITY_W; 
     180 
     181struct SEC_WINNT_AUTH_IDENTITY_A
     182    ubyte* User; 
    184183    uint UserLength; 
    185     ubyte *Domain; 
     184    ubyte* Domain; 
    186185    uint DomainLength; 
    187     ubyte *Password; 
     186    ubyte* Password; 
    188187    uint PasswordLength; 
    189188    uint Flags; 
    190189} 
    191 alias SEC_WINNT_AUTH_IDENTITY_A * PSEC_WINNT_AUTH_IDENTITY_A; 
     190alias SEC_WINNT_AUTH_IDENTITY_A* PSEC_WINNT_AUTH_IDENTITY_A; 
    192191 
    193192struct RPC_CLIENT_INFORMATION1 { 
    194     ubyte *UserName; 
    195     ubyte *ComputerName; 
     193    ubyte* UserName; 
     194    ubyte* ComputerName; 
    196195    ushort Privilege; 
    197196    uint AuthFlags; 
    198197} 
    199 alias RPC_CLIENT_INFORMATION1 * PRPC_CLIENT_INFORMATION1; 
    200 alias I_RPC_HANDLE *RPC_EP_INQ_HANDLE; 
     198alias RPC_CLIENT_INFORMATION1* PRPC_CLIENT_INFORMATION1; 
     199alias I_RPC_HANDLE* RPC_EP_INQ_HANDLE; 
    201200extern (Windows) { 
    202 alias int function(RPC_BINDING_HANDLE,uint,RPC_STATUS*) RPC_MGMT_AUTHORIZATION_FN; 
     201   alias int function(RPC_BINDING_HANDLE, uint, RPC_STATUS*) RPC_MGMT_AUTHORIZATION_FN; 
    203202} 
    204203 
    205204static if(_WIN32_WINNT_ONLY) { 
    206205 
    207 struct RPC_PROTSEQ_VECTORA
     206struct RPC_PROTSEQ_VECTORA
    208207    uint Count; 
    209     ubyte*Protseq[1]; 
    210 
    211 struct RPC_PROTSEQ_VECTORW{ 
     208    ubyte*[1] Protseq; 
     209
     210 
     211struct RPC_PROTSEQ_VECTORW { 
    212212    uint Count; 
    213     ushort*Protseq[1]; 
    214 
     213    ushort*[1] Protseq; 
     214
     215 
    215216extern (Windows) { 
    216 RPC_STATUS RpcBindingFromStringBindingA(char *,RPC_BINDING_HANDLE *); 
    217 RPC_STATUS RpcBindingFromStringBindingW(wchar *,RPC_BINDING_HANDLE *); 
    218 RPC_STATUS RpcBindingToStringBindingA(RPC_BINDING_HANDLE,char **); 
    219 RPC_STATUS RpcBindingToStringBindingW(RPC_BINDING_HANDLE,wchar **); 
    220 RPC_STATUS RpcStringBindingComposeA(char *,char *,char *,char *,char *,char **); 
    221 RPC_STATUS RpcStringBindingComposeW(wchar *,wchar *,wchar *,wchar *,wchar *,wchar **); 
    222 RPC_STATUS RpcStringBindingParseA(char *,char **,char **,char **,char **,char **); 
    223 RPC_STATUS RpcStringBindingParseW(wchar *,wchar **,wchar **,wchar **,wchar **,wchar **); 
    224 RPC_STATUS RpcStringFreeA(char **); 
    225 RPC_STATUS RpcStringFreeW(wchar **); 
    226 RPC_STATUS RpcNetworkIsProtseqValidA(char *); 
    227 RPC_STATUS RpcNetworkIsProtseqValidW(wchar *); 
    228 RPC_STATUS RpcNetworkInqProtseqsA(RPC_PROTSEQ_VECTORA**); 
    229 RPC_STATUS RpcNetworkInqProtseqsW(RPC_PROTSEQ_VECTORW**); 
    230 RPC_STATUS RpcProtseqVectorFreeA(RPC_PROTSEQ_VECTORA**); 
    231 RPC_STATUS RpcProtseqVectorFreeW(RPC_PROTSEQ_VECTORW**); 
    232 RPC_STATUS RpcServerUseProtseqA(char *,uint,void*); 
    233 RPC_STATUS RpcServerUseProtseqW(wchar *,uint,void*); 
    234 RPC_STATUS RpcServerUseProtseqExA(char *,uint MaxCalls,void*,PRPC_POLICY); 
    235 RPC_STATUS RpcServerUseProtseqExW(wchar *,uint,void*,PRPC_POLICY); 
    236 RPC_STATUS RpcServerUseProtseqEpA(char *,uint,char *,void*); 
    237 RPC_STATUS RpcServerUseProtseqEpExA(char *,uint,char *,void*,PRPC_POLICY); 
    238 RPC_STATUS RpcServerUseProtseqEpW(wchar *,uint,wchar *,void*); 
    239 RPC_STATUS RpcServerUseProtseqEpExW(wchar *,uint,wchar *,void*,PRPC_POLICY); 
    240 RPC_STATUS RpcServerUseProtseqIfA(char *,uint,RPC_IF_HANDLE,void*); 
    241 RPC_STATUS RpcServerUseProtseqIfExA(char *,uint,RPC_IF_HANDLE,void*,PRPC_POLICY); 
    242 RPC_STATUS RpcServerUseProtseqIfW(wchar *,uint,RPC_IF_HANDLE,void*); 
    243 RPC_STATUS RpcServerUseProtseqIfExW(wchar *,uint,RPC_IF_HANDLE,void*,PRPC_POLICY); 
    244 RPC_STATUS RpcMgmtInqServerPrincNameA(RPC_BINDING_HANDLE,uint,char **); 
    245 RPC_STATUS RpcMgmtInqServerPrincNameW(RPC_BINDING_HANDLE,uint,wchar **); 
    246 RPC_STATUS RpcServerInqDefaultPrincNameA(uint,char **); 
    247 RPC_STATUS RpcServerInqDefaultPrincNameW(uint,wchar **); 
    248 RPC_STATUS RpcNsBindingInqEntryNameA(RPC_BINDING_HANDLE,uint,char **); 
    249 RPC_STATUS RpcNsBindingInqEntryNameW(RPC_BINDING_HANDLE,uint,wchar **); 
    250 RPC_STATUS RpcBindingInqAuthClientA(RPC_BINDING_HANDLE,RPC_AUTHZ_HANDLE *,char **,uint*,uint*,uint*); 
    251 RPC_STATUS RpcBindingInqAuthClientW(RPC_BINDING_HANDLE,RPC_AUTHZ_HANDLE *,wchar **,uint*,uint*,uint*); 
    252 RPC_STATUS RpcBindingInqAuthInfoA(RPC_BINDING_HANDLE,char **,uint*,uint*,RPC_AUTH_IDENTITY_HANDLE*,uint*); 
    253 RPC_STATUS RpcBindingInqAuthInfoW(RPC_BINDING_HANDLE,wchar **,uint*,uint*,RPC_AUTH_IDENTITY_HANDLE*,uint*); 
    254 RPC_STATUS RpcBindingSetAuthInfoA(RPC_BINDING_HANDLE,char *,uint,uint,RPC_AUTH_IDENTITY_HANDLE,uint); 
    255 RPC_STATUS RpcBindingSetAuthInfoExA(RPC_BINDING_HANDLE,char *,uint,uint,RPC_AUTH_IDENTITY_HANDLE,uint,RPC_SECURITY_QOS*); 
    256 RPC_STATUS RpcBindingSetAuthInfoW(RPC_BINDING_HANDLE,wchar *,uint,uint,RPC_AUTH_IDENTITY_HANDLE,uint); 
    257 RPC_STATUS RpcBindingSetAuthInfoExW(RPC_BINDING_HANDLE,wchar *,uint,uint,RPC_AUTH_IDENTITY_HANDLE,uint,RPC_SECURITY_QOS*); 
    258 RPC_STATUS RpcBindingInqAuthInfoExA(RPC_BINDING_HANDLE,char **,uint*,uint*,RPC_AUTH_IDENTITY_HANDLE*,uint*,uint,RPC_SECURITY_QOS*); 
    259 RPC_STATUS RpcBindingInqAuthInfoExW(RPC_BINDING_HANDLE,wchar ** , uint *, uint *, RPC_AUTH_IDENTITY_HANDLE *, uint *, uint , RPC_SECURITY_QOS *); 
    260 alias void function(void*, wchar *,uint,void**,RPC_STATUS*) RPC_AUTH_KEY_RETRIEVAL_FN; 
    261 RPC_STATUS RpcServerRegisterAuthInfoA(char *,uint,RPC_AUTH_KEY_RETRIEVAL_FN,void*); 
    262 RPC_STATUS RpcServerRegisterAuthInfoW(wchar *,uint,RPC_AUTH_KEY_RETRIEVAL_FN,void*); 
    263 RPC_STATUS UuidToStringA(UUID*,char **); 
    264 RPC_STATUS UuidFromStringA(char *,UUID*); 
    265 RPC_STATUS UuidToStringW(UUID*,wchar **); 
    266 RPC_STATUS UuidFromStringW(wchar *,UUID*); 
    267 RPC_STATUS RpcEpRegisterNoReplaceA(RPC_IF_HANDLE,RPC_BINDING_VECTOR*,UUID_VECTOR*,char *); 
    268 RPC_STATUS RpcEpRegisterNoReplaceW(RPC_IF_HANDLE,RPC_BINDING_VECTOR*, UUID_VECTOR*,wchar *); 
    269 RPC_STATUS RpcEpRegisterA(RPC_IF_HANDLE,RPC_BINDING_VECTOR*,UUID_VECTOR*,char *); 
    270 RPC_STATUS RpcEpRegisterW(RPC_IF_HANDLE,RPC_BINDING_VECTOR*,UUID_VECTOR*,wchar *); 
    271 RPC_STATUS DceErrorInqTextA(RPC_STATUS,char *); 
    272 RPC_STATUS DceErrorInqTextW(RPC_STATUS,wchar *); 
    273 RPC_STATUS RpcMgmtEpEltInqNextA(RPC_EP_INQ_HANDLE,RPC_IF_ID*,RPC_BINDING_HANDLE*,UUID*,char **); 
    274 RPC_STATUS RpcMgmtEpEltInqNextW(RPC_EP_INQ_HANDLE,RPC_IF_ID*,RPC_BINDING_HANDLE*,UUID*,wchar **); 
    275  
    276 // MinGW erroneously had these in rpc.h 
    277 RPC_STATUS RpcImpersonateClient(RPC_BINDING_HANDLE); 
    278 RPC_STATUS RpcRevertToSelf(); 
    279  
     217    RPC_STATUS RpcBindingFromStringBindingA(char*, RPC_BINDING_HANDLE*); 
     218    RPC_STATUS RpcBindingFromStringBindingW(wchar*, RPC_BINDING_HANDLE*); 
     219    RPC_STATUS RpcBindingToStringBindingA(RPC_BINDING_HANDLE, char**); 
     220    RPC_STATUS RpcBindingToStringBindingW(RPC_BINDING_HANDLE, wchar**); 
     221    RPC_STATUS RpcStringBindingComposeA(char*, char*, char*, char*, char*, char**); 
     222    RPC_STATUS RpcStringBindingComposeW(wchar*, wchar*, wchar*, wchar*, wchar*, wchar**); 
     223    RPC_STATUS RpcStringBindingParseA(char*, char**, char**, char**, char**, char**); 
     224    RPC_STATUS RpcStringBindingParseW(wchar*, wchar**, wchar**, wchar**, wchar**, wchar**); 
     225    RPC_STATUS RpcStringFreeA(char**); 
     226    RPC_STATUS RpcStringFreeW(wchar**); 
     227    RPC_STATUS RpcNetworkIsProtseqValidA(char*); 
     228    RPC_STATUS RpcNetworkIsProtseqValidW(wchar*); 
     229    RPC_STATUS RpcNetworkInqProtseqsA(RPC_PROTSEQ_VECTORA**); 
     230    RPC_STATUS RpcNetworkInqProtseqsW(RPC_PROTSEQ_VECTORW**); 
     231    RPC_STATUS RpcProtseqVectorFreeA(RPC_PROTSEQ_VECTORA**); 
     232    RPC_STATUS RpcProtseqVectorFreeW(RPC_PROTSEQ_VECTORW**); 
     233    RPC_STATUS RpcServerUseProtseqA(char*, uint, void*); 
     234    RPC_STATUS RpcServerUseProtseqW(wchar*, uint, void*); 
     235    RPC_STATUS RpcServerUseProtseqExA(char*, uint MaxCalls, void*, PRPC_POLICY); 
     236    RPC_STATUS RpcServerUseProtseqExW(wchar*, uint, void*, PRPC_POLICY); 
     237    RPC_STATUS RpcServerUseProtseqEpA(char*, uint, char*, void*); 
     238    RPC_STATUS RpcServerUseProtseqEpExA(char*, uint, char*, void*, PRPC_POLICY); 
     239    RPC_STATUS RpcServerUseProtseqEpW(wchar*, uint, wchar*, void*); 
     240    RPC_STATUS RpcServerUseProtseqEpExW(wchar*, uint, wchar*, void*, PRPC_POLICY); 
     241    RPC_STATUS RpcServerUseProtseqIfA(char*, uint, RPC_IF_HANDLE, void*); 
     242    RPC_STATUS RpcServerUseProtseqIfExA(char*, uint, RPC_IF_HANDLE, void*, PRPC_POLICY); 
     243    RPC_STATUS RpcServerUseProtseqIfW(wchar*, uint, RPC_IF_HANDLE, void*); 
     244    RPC_STATUS RpcServerUseProtseqIfExW(wchar*, uint, RPC_IF_HANDLE, void*, PRPC_POLICY); 
     245    RPC_STATUS RpcMgmtInqServerPrincNameA(RPC_BINDING_HANDLE, uint, char**); 
     246    RPC_STATUS RpcMgmtInqServerPrincNameW(RPC_BINDING_HANDLE, uint, wchar**); 
     247    RPC_STATUS RpcServerInqDefaultPrincNameA(uint, char**); 
     248    RPC_STATUS RpcServerInqDefaultPrincNameW(uint, wchar**); 
     249    RPC_STATUS RpcNsBindingInqEntryNameA(RPC_BINDING_HANDLE, uint, char**); 
     250    RPC_STATUS RpcNsBindingInqEntryNameW(RPC_BINDING_HANDLE, uint, wchar**); 
     251    RPC_STATUS RpcBindingInqAuthClientA(RPC_BINDING_HANDLE, RPC_AUTHZ_HANDLE*, char**, uint*, uint*, uint*); 
     252    RPC_STATUS RpcBindingInqAuthClientW(RPC_BINDING_HANDLE, RPC_AUTHZ_HANDLE*, wchar**, uint*, uint*, uint*); 
     253    RPC_STATUS RpcBindingInqAuthInfoA(RPC_BINDING_HANDLE, char**, uint*, uint*, RPC_AUTH_IDENTITY_HANDLE*, uint*); 
     254    RPC_STATUS RpcBindingInqAuthInfoW(RPC_BINDING_HANDLE, wchar**, uint*, uint*, RPC_AUTH_IDENTITY_HANDLE*, uint*); 
     255    RPC_STATUS RpcBindingSetAuthInfoA(RPC_BINDING_HANDLE, char*, uint, uint, RPC_AUTH_IDENTITY_HANDLE, uint); 
     256    RPC_STATUS RpcBindingSetAuthInfoExA(RPC_BINDING_HANDLE, char*, uint, uint, RPC_AUTH_IDENTITY_HANDLE, uint, RPC_SECURITY_QOS*); 
     257    RPC_STATUS RpcBindingSetAuthInfoW(RPC_BINDING_HANDLE, wchar*, uint, uint, RPC_AUTH_IDENTITY_HANDLE, uint); 
     258    RPC_STATUS RpcBindingSetAuthInfoExW(RPC_BINDING_HANDLE, wchar*, uint, uint, RPC_AUTH_IDENTITY_HANDLE, uint, RPC_SECURITY_QOS*); 
     259    RPC_STATUS RpcBindingInqAuthInfoExA(RPC_BINDING_HANDLE, char**, uint*, uint*, RPC_AUTH_IDENTITY_HANDLE*, uint*, uint, RPC_SECURITY_QOS*); 
     260    RPC_STATUS RpcBindingInqAuthInfoExW(RPC_BINDING_HANDLE, wchar**, uint*, uint*, RPC_AUTH_IDENTITY_HANDLE*, uint*, uint, RPC_SECURITY_QOS*); 
     261    alias void function(void*, wchar*, uint, void**, RPC_STATUS*) RPC_AUTH_KEY_RETRIEVAL_FN; 
     262    RPC_STATUS RpcServerRegisterAuthInfoA(char*, uint, RPC_AUTH_KEY_RETRIEVAL_FN, void*); 
     263    RPC_STATUS RpcServerRegisterAuthInfoW(wchar*, uint, RPC_AUTH_KEY_RETRIEVAL_FN, void*); 
     264    RPC_STATUS UuidToStringA(UUID*, char**); 
     265    RPC_STATUS UuidFromStringA(char*, UUID*); 
     266    RPC_STATUS UuidToStringW(UUID*, wchar**); 
     267    RPC_STATUS UuidFromStringW(wchar*, UUID*); 
     268    RPC_STATUS RpcEpRegisterNoReplaceA(RPC_IF_HANDLE, RPC_BINDING_VECTOR*, UUID_VECTOR*, char*); 
     269    RPC_STATUS RpcEpRegisterNoReplaceW(RPC_IF_HANDLE, RPC_BINDING_VECTOR*, UUID_VECTOR*, wchar*); 
     270    RPC_STATUS RpcEpRegisterA(RPC_IF_HANDLE, RPC_BINDING_VECTOR*, UUID_VECTOR*, char*); 
     271    RPC_STATUS RpcEpRegisterW(RPC_IF_HANDLE, RPC_BINDING_VECTOR*, UUID_VECTOR*, wchar*); 
     272    RPC_STATUS DceErrorInqTextA(RPC_STATUS, char*); 
     273    RPC_STATUS DceErrorInqTextW(RPC_STATUS, wchar*); 
     274    RPC_STATUS RpcMgmtEpEltInqNextA(RPC_EP_INQ_HANDLE, RPC_IF_ID*, RPC_BINDING_HANDLE*, UUID*, char**); 
     275    RPC_STATUS RpcMgmtEpEltInqNextW(RPC_EP_INQ_HANDLE, RPC_IF_ID*, RPC_BINDING_HANDLE*, UUID*, wchar**); 
     276 
     277    // MinGW erroneously had these in rpc.h 
     278    RPC_STATUS RpcImpersonateClient(RPC_BINDING_HANDLE); 
     279    RPC_STATUS RpcRevertToSelf(); 
    280280} 
    281281 
    282282version(Unicode) { 
    283 alias RPC_PROTSEQ_VECTORW RPC_PROTSEQ_VECTOR; 
    284 alias SEC_WINNT_AUTH_IDENTITY_W SEC_WINNT_AUTH_IDENTITY; 
    285 alias PSEC_WINNT_AUTH_IDENTITY_W PSEC_WINNT_AUTH_IDENTITY; 
    286 alias RpcMgmtEpEltInqNextW RpcMgmtEpEltInqNext; 
    287 alias RpcBindingFromStringBindingW RpcBindingFromStringBinding; 
    288 alias RpcBindingToStringBindingW RpcBindingToStringBinding; 
    289 alias RpcStringBindingComposeW RpcStringBindingCompose; 
    290 alias RpcStringBindingParseW RpcStringBindingParse; 
    291 alias RpcStringFreeW RpcStringFree; 
    292 alias RpcNetworkIsProtseqValidW RpcNetworkIsProtseqValid; 
    293 alias RpcNetworkInqProtseqsW RpcNetworkInqProtseqs; 
    294 alias RpcProtseqVectorFreeW RpcProtseqVectorFree; 
    295 alias RpcServerUseProtseqW RpcServerUseProtseq; 
    296 alias RpcServerUseProtseqExW RpcServerUseProtseqEx; 
    297 alias RpcServerUseProtseqEpW RpcServerUseProtseqEp; 
    298 alias RpcServerUseProtseqEpExW RpcServerUseProtseqEpEx; 
    299 alias RpcServerUseProtseqIfW RpcServerUseProtseqIf; 
    300 alias RpcServerUseProtseqIfExW RpcServerUseProtseqIfEx; 
    301 alias RpcMgmtInqServerPrincNameW RpcMgmtInqServerPrincName; 
    302 alias RpcServerInqDefaultPrincNameW RpcServerInqDefaultPrincName; 
    303 alias RpcNsBindingInqEntryNameW RpcNsBindingInqEntryName; 
    304 alias RpcBindingInqAuthClientW RpcBindingInqAuthClient; 
    305 alias RpcBindingInqAuthInfoW RpcBindingInqAuthInfo; 
    306 alias RpcBindingSetAuthInfoW RpcBindingSetAuthInfo; 
    307 alias RpcServerRegisterAuthInfoW RpcServerRegisterAuthInfo; 
    308 alias RpcBindingInqAuthInfoExW RpcBindingInqAuthInfoEx; 
    309 alias RpcBindingSetAuthInfoExW RpcBindingSetAuthInfoEx; 
    310 alias UuidFromStringW UuidFromString; 
    311 alias UuidToStringW UuidToString; 
    312 alias RpcEpRegisterNoReplaceW RpcEpRegisterNoReplace; 
    313 alias RpcEpRegisterW RpcEpRegister; 
    314 alias DceErrorInqTextW DceErrorInqText; 
     283   alias RPC_PROTSEQ_VECTORW RPC_PROTSEQ_VECTOR; 
     284   alias SEC_WINNT_AUTH_IDENTITY_W SEC_WINNT_AUTH_IDENTITY; 
     285   alias PSEC_WINNT_AUTH_IDENTITY_W PSEC_WINNT_AUTH_IDENTITY; 
     286   alias RpcMgmtEpEltInqNextW RpcMgmtEpEltInqNext; 
     287   alias RpcBindingFromStringBindingW RpcBindingFromStringBinding; 
     288   alias RpcBindingToStringBindingW RpcBindingToStringBinding; 
     289   alias RpcStringBindingComposeW RpcStringBindingCompose; 
     290   alias RpcStringBindingParseW RpcStringBindingParse; 
     291   alias RpcStringFreeW RpcStringFree; 
     292   alias RpcNetworkIsProtseqValidW RpcNetworkIsProtseqValid; 
     293   alias RpcNetworkInqProtseqsW RpcNetworkInqProtseqs; 
     294   alias RpcProtseqVectorFreeW RpcProtseqVectorFree; 
     295   alias RpcServerUseProtseqW RpcServerUseProtseq; 
     296   alias RpcServerUseProtseqExW RpcServerUseProtseqEx; 
     297   alias RpcServerUseProtseqEpW RpcServerUseProtseqEp; 
     298   alias RpcServerUseProtseqEpExW RpcServerUseProtseqEpEx; 
     299   alias RpcServerUseProtseqIfW RpcServerUseProtseqIf; 
     300   alias RpcServerUseProtseqIfExW RpcServerUseProtseqIfEx; 
     301   alias RpcMgmtInqServerPrincNameW RpcMgmtInqServerPrincName; 
     302   alias RpcServerInqDefaultPrincNameW RpcServerInqDefaultPrincName; 
     303   alias RpcNsBindingInqEntryNameW RpcNsBindingInqEntryName; 
     304   alias RpcBindingInqAuthClientW RpcBindingInqAuthClient; 
     305   alias RpcBindingInqAuthInfoW RpcBindingInqAuthInfo; 
     306   alias RpcBindingSetAuthInfoW RpcBindingSetAuthInfo; 
     307   alias RpcServerRegisterAuthInfoW RpcServerRegisterAuthInfo; 
     308   alias RpcBindingInqAuthInfoExW RpcBindingInqAuthInfoEx; 
     309   alias RpcBindingSetAuthInfoExW RpcBindingSetAuthInfoEx; 
     310   alias UuidFromStringW UuidFromString; 
     311   alias UuidToStringW UuidToString; 
     312   alias RpcEpRegisterNoReplaceW RpcEpRegisterNoReplace; 
     313   alias RpcEpRegisterW RpcEpRegister; 
     314   alias DceErrorInqTextW DceErrorInqText; 
    315315} else { // Ansi 
    316 alias RPC_PROTSEQ_VECTORA RPC_PROTSEQ_VECTOR; 
    317 alias SEC_WINNT_AUTH_IDENTITY_A SEC_WINNT_AUTH_IDENTITY; 
    318 alias PSEC_WINNT_AUTH_IDENTITY_A PSEC_WINNT_AUTH_IDENTITY; 
    319 alias RpcMgmtEpEltInqNextA RpcMgmtEpEltInqNext; 
    320 alias RpcBindingFromStringBindingA RpcBindingFromStringBinding; 
    321 alias RpcBindingToStringBindingA RpcBindingToStringBinding; 
    322 alias RpcStringBindingComposeA RpcStringBindingCompose; 
    323 alias RpcStringBindingParseA RpcStringBindingParse; 
    324 alias RpcStringFreeA RpcStringFree; 
    325 alias RpcNetworkIsProtseqValidA RpcNetworkIsProtseqValid; 
    326 alias RpcNetworkInqProtseqsA RpcNetworkInqProtseqs; 
    327 alias RpcProtseqVectorFreeA RpcProtseqVectorFree; 
    328 alias RpcServerUseProtseqA RpcServerUseProtseq; 
    329 alias RpcServerUseProtseqExA RpcServerUseProtseqEx; 
    330 alias RpcServerUseProtseqEpA RpcServerUseProtseqEp; 
    331 alias RpcServerUseProtseqEpExA RpcServerUseProtseqEpEx; 
    332 alias RpcServerUseProtseqIfA RpcServerUseProtseqIf; 
    333 alias RpcServerUseProtseqIfExA RpcServerUseProtseqIfEx; 
    334 alias RpcMgmtInqServerPrincNameA RpcMgmtInqServerPrincName; 
    335 alias RpcServerInqDefaultPrincNameA RpcServerInqDefaultPrincName; 
    336 alias RpcNsBindingInqEntryNameA RpcNsBindingInqEntryName; 
    337 alias RpcBindingInqAuthClientA RpcBindingInqAuthClient; 
    338 alias RpcBindingInqAuthInfoA RpcBindingInqAuthInfo; 
    339 alias RpcBindingSetAuthInfoA RpcBindingSetAuthInfo; 
    340 alias RpcServerRegisterAuthInfoA RpcServerRegisterAuthInfo; 
    341 alias RpcBindingInqAuthInfoExA RpcBindingInqAuthInfoEx; 
    342 alias RpcBindingSetAuthInfoExA RpcBindingSetAuthInfoEx; 
    343 alias UuidFromStringA UuidFromString; 
    344 alias UuidToStringA UuidToString; 
    345 alias RpcEpRegisterNoReplaceA RpcEpRegisterNoReplace; 
    346 alias RpcEpRegisterA RpcEpRegister; 
    347 alias DceErrorInqTextA DceErrorInqText; 
    348 }//#endif /* UNICODE */ 
     316   alias RPC_PROTSEQ_VECTORA RPC_PROTSEQ_VECTOR; 
     317   alias SEC_WINNT_AUTH_IDENTITY_A SEC_WINNT_AUTH_IDENTITY; 
     318   alias PSEC_WINNT_AUTH_IDENTITY_A PSEC_WINNT_AUTH_IDENTITY; 
     319   alias RpcMgmtEpEltInqNextA RpcMgmtEpEltInqNext; 
     320   alias RpcBindingFromStringBindingA RpcBindingFromStringBinding; 
     321   alias RpcBindingToStringBindingA RpcBindingToStringBinding; 
     322   alias RpcStringBindingComposeA RpcStringBindingCompose; 
     323   alias RpcStringBindingParseA RpcStringBindingParse; 
     324   alias RpcStringFreeA RpcStringFree; 
     325   alias RpcNetworkIsProtseqValidA RpcNetworkIsProtseqValid; 
     326   alias RpcNetworkInqProtseqsA RpcNetworkInqProtseqs; 
     327   alias RpcProtseqVectorFreeA RpcProtseqVectorFree; 
     328   alias RpcServerUseProtseqA RpcServerUseProtseq; 
     329   alias RpcServerUseProtseqExA RpcServerUseProtseqEx; 
     330   alias RpcServerUseProtseqEpA RpcServerUseProtseqEp; 
     331   alias RpcServerUseProtseqEpExA RpcServerUseProtseqEpEx; 
     332   alias RpcServerUseProtseqIfA RpcServerUseProtseqIf; 
     333   alias RpcServerUseProtseqIfExA RpcServerUseProtseqIfEx; 
     334   alias RpcMgmtInqServerPrincNameA RpcMgmtInqServerPrincName; 
     335   alias RpcServerInqDefaultPrincNameA RpcServerInqDefaultPrincName; 
     336   alias RpcNsBindingInqEntryNameA RpcNsBindingInqEntryName; 
     337   alias RpcBindingInqAuthClientA RpcBindingInqAuthClient; 
     338   alias RpcBindingInqAuthInfoA RpcBindingInqAuthInfo; 
     339   alias RpcBindingSetAuthInfoA RpcBindingSetAuthInfo; 
     340   alias RpcServerRegisterAuthInfoA RpcServerRegisterAuthInfo; 
     341   alias RpcBindingInqAuthInfoExA RpcBindingInqAuthInfoEx; 
     342   alias RpcBindingSetAuthInfoExA RpcBindingSetAuthInfoEx; 
     343   alias UuidFromStringA UuidFromString; 
     344   alias UuidToStringA UuidToString; 
     345   alias RpcEpRegisterNoReplaceA RpcEpRegisterNoReplace; 
     346   alias RpcEpRegisterA RpcEpRegister; 
     347   alias DceErrorInqTextA DceErrorInqText; 
     348} //#endif // UNICODE 
    349349 
    350350} else { // _WIN32_WINNT_ONLY 
    351351 
    352 struct RPC_PROTSEQ_VECTOR
    353     uint Count; 
    354     ubyte* Protseq[1]; 
    355 
    356 // versions without Unicode. 
    357 RPC_STATUS RpcBindingFromStringBinding(char *,RPC_BINDING_HANDLE *); 
    358 RPC_STATUS RpcBindingToStringBinding(RPC_BINDING_HANDLE,char **); 
    359 RPC_STATUS RpcStringBindingCompose(char *,char *,char *,char *,char *,char **); 
    360 RPC_STATUS RpcStringBindingParse(char *,char **,char **,char **,char **,char **); 
    361 RPC_STATUS RpcStringFree(char **); 
    362 RPC_STATUS RpcNetworkIsProtseqValid(char *); 
    363 RPC_STATUS RpcNetworkInqProtseqs(RPC_PROTSEQ_VECTOR **); 
    364 RPC_STATUS RpcServerInqBindings(RPC_BINDING_VECTOR **); 
    365 RPC_STATUS RpcServerUseProtseq(char *,uint,void*); 
    366 RPC_STATUS RpcServerUseProtseqEx(char *,uint,void*,PRPC_POLICY); 
    367 RPC_STATUS RpcServerUseProtseqEp(char *,uint,char *,void*); 
    368 RPC_STATUS RpcServerUseProtseqEpEx(char *,uint,char *,void*,PRPC_POLICY); 
    369 RPC_STATUS RpcServerUseProtseqIf(char *,uint,RPC_IF_HANDLE,void*); 
    370 RPC_STATUS RpcServerUseProtseqIfEx(char *,uint,RPC_IF_HANDLE,void*,PRPC_POLICY); 
    371 RPC_STATUS RpcMgmtInqServerPrincName(RPC_BINDING_HANDLE,uint,char **); 
    372 RPC_STATUS RpcServerInqDefaultPrincName(uint,char **); 
    373 RPC_STATUS RpcNsBindingInqEntryName(RPC_BINDING_HANDLE,uint,char **); 
    374 RPC_STATUS RpcBindingInqAuthClient(RPC_BINDING_HANDLE,RPC_AUTHZ_HANDLE*,char **,uint*,uint*,uint*); 
    375 RPC_STATUS RpcBindingInqAuthInfo(RPC_BINDING_HANDLE,char **,uint *,uint *,RPC_AUTH_IDENTITY_HANDLE *,uint *); 
    376 RPC_STATUS RpcBindingSetAuthInfo(RPC_BINDING_HANDLE,char *,uint,uint,RPC_AUTH_IDENTITY_HANDLE,uint); 
    377 alias void function(void*,char *,uint,void**,RPC_STATUS*) RPC_AUTH_KEY_RETRIEVAL_FN; 
    378 RPC_STATUS RpcServerRegisterAuthInfo(char *,uint,RPC_AUTH_KEY_RETRIEVAL_FN,void*); 
    379 RPC_STATUS UuidToString(UUID*,char **); 
    380 RPC_STATUS UuidFromString(char *,UUID*); 
    381 RPC_STATUS RpcEpRegisterNoReplace(RPC_IF_HANDLE,RPC_BINDING_VECTOR*,UUID_VECTOR*,char *); 
    382 RPC_STATUS RpcEpRegister(RPC_IF_HANDLE,RPC_BINDING_VECTOR*,UUID_VECTOR*,char *); 
    383 RPC_STATUS DceErrorInqText(RPC_STATUS,char *); 
    384 RPC_STATUS RpcMgmtEpEltInqNext(RPC_EP_INQ_HANDLE,RPC_IF_ID *,RPC_BINDING_HANDLE *,char **); 
     352   struct RPC_PROTSEQ_VECTOR
     353       uint Count; 
     354       ubyte* Protseq[1]; 
     355   
     356   // versions without Unicode. 
     357   RPC_STATUS RpcBindingFromStringBinding(char*, RPC_BINDING_HANDLE*); 
     358   RPC_STATUS RpcBindingToStringBinding(RPC_BINDING_HANDLE, char**); 
     359   RPC_STATUS RpcStringBindingCompose(char*, char*, char*, char*, char*, char**); 
     360   RPC_STATUS RpcStringBindingParse(char*, char**, char**, char**, char**, char**); 
     361   RPC_STATUS RpcStringFree(char**); 
     362   RPC_STATUS RpcNetworkIsProtseqValid(char*); 
     363   RPC_STATUS RpcNetworkInqProtseqs(RPC_PROTSEQ_VECTOR**); 
     364   RPC_STATUS RpcServerInqBindings(RPC_BINDING_VECTOR**); 
     365   RPC_STATUS RpcServerUseProtseq(char*, uint, void*); 
     366   RPC_STATUS RpcServerUseProtseqEx(char*, uint, void*, PRPC_POLICY); 
     367   RPC_STATUS RpcServerUseProtseqEp(char*, uint, char*, void*); 
     368   RPC_STATUS RpcServerUseProtseqEpEx(char*, uint, char*, void*, PRPC_POLICY); 
     369   RPC_STATUS RpcServerUseProtseqIf(char*, uint, RPC_IF_HANDLE, void*); 
     370   RPC_STATUS RpcServerUseProtseqIfEx(char*, uint, RPC_IF_HANDLE, void*, PRPC_POLICY); 
     371   RPC_STATUS RpcMgmtInqServerPrincName(RPC_BINDING_HANDLE, uint, char**); 
     372   RPC_STATUS RpcServerInqDefaultPrincName(uint, char**); 
     373   RPC_STATUS RpcNsBindingInqEntryName(RPC_BINDING_HANDLE, uint, char**); 
     374   RPC_STATUS RpcBindingInqAuthClient(RPC_BINDING_HANDLE, RPC_AUTHZ_HANDLE*, char**, uint*, uint*, uint*); 
     375   RPC_STATUS RpcBindingInqAuthInfo(RPC_BINDING_HANDLE, char**, uint*, uint*, RPC_AUTH_IDENTITY_HANDLE*, uint*); 
     376   RPC_STATUS RpcBindingSetAuthInfo(RPC_BINDING_HANDLE, char*, uint, uint, RPC_AUTH_IDENTITY_HANDLE, uint); 
     377   alias void function(void*, char*, uint, void**, RPC_STATUS*) RPC_AUTH_KEY_RETRIEVAL_FN; 
     378   RPC_STATUS RpcServerRegisterAuthInfo(char*, uint, RPC_AUTH_KEY_RETRIEVAL_FN, void*); 
     379   RPC_STATUS UuidToString(UUID*, char**); 
     380   RPC_STATUS UuidFromString(char*, UUID*); 
     381   RPC_STATUS RpcEpRegisterNoReplace(RPC_IF_HANDLE, RPC_BINDING_VECTOR*, UUID_VECTOR*, char*); 
     382   RPC_STATUS RpcEpRegister(RPC_IF_HANDLE, RPC_BINDING_VECTOR*, UUID_VECTOR*, char*); 
     383   RPC_STATUS DceErrorInqText(RPC_STATUS, char*); 
     384   RPC_STATUS RpcMgmtEpEltInqNext(RPC_EP_INQ_HANDLE, RPC_IF_ID*, RPC_BINDING_HANDLE*, char**); 
    385385}// _WIN32_WINNT_ONLY 
    386386 
    387387 
    388 RPC_STATUS RpcBindingCopy(RPC_BINDING_HANDLE,RPC_BINDING_HANDLE*); 
     388RPC_STATUS RpcBindingCopy(RPC_BINDING_HANDLE, RPC_BINDING_HANDLE*); 
    389389RPC_STATUS RpcBindingFree(RPC_BINDING_HANDLE*); 
    390 RPC_STATUS RpcBindingInqObject(RPC_BINDING_HANDLE,UUID *); 
     390RPC_STATUS RpcBindingInqObject(RPC_BINDING_HANDLE, UUID*); 
    391391RPC_STATUS RpcBindingReset(RPC_BINDING_HANDLE); 
    392 RPC_STATUS RpcBindingSetObject(RPC_BINDING_HANDLE,UUID *); 
    393 RPC_STATUS RpcMgmtInqDefaultProtectLevel(uint,uint *); 
    394 RPC_STATUS RpcBindingVectorFree(RPC_BINDING_VECTOR **); 
    395 RPC_STATUS RpcIfInqId(RPC_IF_HANDLE,RPC_IF_ID *); 
    396 RPC_STATUS RpcMgmtInqComTimeout(RPC_BINDING_HANDLE,uint*); 
    397 RPC_STATUS RpcMgmtSetComTimeout(RPC_BINDING_HANDLE,uint); 
     392RPC_STATUS RpcBindingSetObject(RPC_BINDING_HANDLE, UUID*); 
     393RPC_STATUS RpcMgmtInqDefaultProtectLevel(uint, uint*); 
     394RPC_STATUS RpcBindingVectorFree(RPC_BINDING_VECTOR**); 
     395RPC_STATUS RpcIfInqId(RPC_IF_HANDLE, RPC_IF_ID*); 
     396RPC_STATUS RpcMgmtInqComTimeout(RPC_BINDING_HANDLE, uint*); 
     397RPC_STATUS RpcMgmtSetComTimeout(RPC_BINDING_HANDLE, uint); 
    398398RPC_STATUS RpcMgmtSetCancelTimeout(int Timeout); 
    399 RPC_STATUS RpcObjectInqType(UUID *,UUID *); 
    400 RPC_STATUS RpcObjectSetInqFn(RPC_OBJECT_INQ_FN *); 
    401 RPC_STATUS RpcObjectSetType(UUID *,UUID *); 
    402 RPC_STATUS RpcProtseqVectorFree(RPC_PROTSEQ_VECTOR **); 
    403 RPC_STATUS RpcServerInqIf(RPC_IF_HANDLE,UUID*,RPC_MGR_EPV**); 
    404 RPC_STATUS RpcServerListen(uint,uint,uint); 
    405 RPC_STATUS RpcServerRegisterIf(RPC_IF_HANDLE,UUID*,RPC_MGR_EPV*); 
    406 RPC_STATUS RpcServerRegisterIfEx(RPC_IF_HANDLE,UUID*,RPC_MGR_EPV*,uint,uint,RPC_IF_CALLBACK_FN*); 
    407 RPC_STATUS RpcServerRegisterIf2(RPC_IF_HANDLE,UUID*,RPC_MGR_EPV*,uint,uint,uint,RPC_IF_CALLBACK_FN*); 
    408 RPC_STATUS RpcServerUnregisterIf(RPC_IF_HANDLE,UUID*,uint); 
    409 RPC_STATUS RpcServerUseAllProtseqs(uint,void*); 
    410 RPC_STATUS RpcServerUseAllProtseqsEx(uint,void*,PRPC_POLICY); 
    411 RPC_STATUS RpcServerUseAllProtseqsIf(uint,RPC_IF_HANDLE,void*); 
    412 RPC_STATUS RpcServerUseAllProtseqsIfEx(uint,RPC_IF_HANDLE,void*,PRPC_POLICY); 
     399RPC_STATUS RpcObjectInqType(UUID*, UUID*); 
     400RPC_STATUS RpcObjectSetInqFn(RPC_OBJECT_INQ_FN*); 
     401RPC_STATUS RpcObjectSetType(UUID*, UUID*); 
     402RPC_STATUS RpcProtseqVectorFree(RPC_PROTSEQ_VECTOR**); 
     403RPC_STATUS RpcServerInqIf(RPC_IF_HANDLE, UUID*, RPC_MGR_EPV**); 
     404RPC_STATUS RpcServerListen(uint, uint, uint); 
     405RPC_STATUS RpcServerRegisterIf(RPC_IF_HANDLE, UUID*, RPC_MGR_EPV*); 
     406RPC_STATUS RpcServerRegisterIfEx(RPC_IF_HANDLE, UUID*, RPC_MGR_EPV*, uint, uint, RPC_IF_CALLBACK_FN*); 
     407RPC_STATUS RpcServerRegisterIf2(RPC_IF_HANDLE, UUID*, RPC_MGR_EPV*, uint, uint, uint, RPC_IF_CALLBACK_FN*); 
     408RPC_STATUS RpcServerUnregisterIf(RPC_IF_HANDLE, UUID*, uint); 
     409RPC_STATUS RpcServerUseAllProtseqs(uint, void*); 
     410RPC_STATUS RpcServerUseAllProtseqsEx(uint, void*, PRPC_POLICY); 
     411RPC_STATUS RpcServerUseAllProtseqsIf(uint, RPC_IF_HANDLE, void*); 
     412RPC_STATUS RpcServerUseAllProtseqsIfEx(uint, RPC_IF_HANDLE, void*, PRPC_POLICY); 
    413413RPC_STATUS RpcMgmtStatsVectorFree(RPC_STATS_VECTOR**); 
    414 RPC_STATUS RpcMgmtInqStats(RPC_BINDING_HANDLE,RPC_STATS_VECTOR**); 
     414RPC_STATUS RpcMgmtInqStats(RPC_BINDING_HANDLE, RPC_STATS_VECTOR**); 
    415415RPC_STATUS RpcMgmtIsServerListening(RPC_BINDING_HANDLE); 
    416416RPC_STATUS RpcMgmtStopServerListening(RPC_BINDING_HANDLE); 
     
    419419void RpcSsDontSerializeContext(); 
    420420RPC_STATUS RpcMgmtEnableIdleCleanup(); 
    421 RPC_STATUS RpcMgmtInqIfIds(RPC_BINDING_HANDLE,RPC_IF_ID_VECTOR**); 
     421RPC_STATUS RpcMgmtInqIfIds(RPC_BINDING_HANDLE, RPC_IF_ID_VECTOR**); 
    422422RPC_STATUS RpcIfIdVectorFree(RPC_IF_ID_VECTOR**); 
    423 RPC_STATUS RpcEpResolveBinding(RPC_BINDING_HANDLE,RPC_IF_HANDLE); 
    424 RPC_STATUS RpcBindingServerFromClient(RPC_BINDING_HANDLE,RPC_BINDING_HANDLE*); 
    425  
    426 /** never returns */ 
    427 void RpcRaiseException(RPC_STATUS); 
     423RPC_STATUS RpcEpResolveBinding(RPC_BINDING_HANDLE, RPC_IF_HANDLE); 
     424RPC_STATUS RpcBindingServerFromClient(RPC_BINDING_HANDLE, RPC_BINDING_HANDLE*); 
     425 
     426// never returns 
     427void RpcRaiseException(RPC_STATUS); 
    428428RPC_STATUS RpcTestCancel(); 
    429429RPC_STATUS RpcCancelThread(void*); 
    430430RPC_STATUS UuidCreate(UUID*); 
    431 int UuidCompare(UUID*,UUID*, RPC_STATUS*); 
     431int UuidCompare(UUID*, UUID*, RPC_STATUS*); 
    432432RPC_STATUS UuidCreateNil(UUID*); 
    433 int UuidEqual(UUID*,UUID*, RPC_STATUS*); 
    434 ushort UuidHash(UUID*,RPC_STATUS*); 
    435 int UuidIsNil(UUID*,RPC_STATUS*); 
    436 RPC_STATUS RpcEpUnregister(RPC_IF_HANDLE,RPC_BINDING_VECTOR*,UUID_VECTOR*); 
    437 RPC_STATUS RpcMgmtEpEltInqBegin(RPC_BINDING_HANDLE,uint,RPC_IF_ID*,uint,UUID*,RPC_EP_INQ_HANDLE*); 
     433int UuidEqual(UUID*, UUID*, RPC_STATUS*); 
     434ushort UuidHash(UUID*, RPC_STATUS*); 
     435int UuidIsNil(UUID*, RPC_STATUS*); 
     436RPC_STATUS RpcEpUnregister(RPC_IF_HANDLE, RPC_BINDING_VECTOR*, UUID_VECTOR*); 
     437RPC_STATUS RpcMgmtEpEltInqBegin(RPC_BINDING_HANDLE, uint, RPC_IF_ID*, uint, UUID*, RPC_EP_INQ_HANDLE*); 
    438438RPC_STATUS RpcMgmtEpEltInqDone(RPC_EP_INQ_HANDLE*); 
    439 RPC_STATUS RpcMgmtEpUnregister(RPC_BINDING_HANDLE,RPC_IF_ID*,RPC_BINDING_HANDLE,UUID*); 
     439RPC_STATUS RpcMgmtEpUnregister(RPC_BINDING_HANDLE, RPC_IF_ID*, RPC_BINDING_HANDLE, UUID*); 
    440440RPC_STATUS RpcMgmtSetAuthorizationFn(RPC_MGMT_AUTHORIZATION_FN); 
    441 RPC_STATUS RpcMgmtInqParameter(uint,uint*); 
    442 RPC_STATUS RpcMgmtSetParameter(uint,uint); 
    443 RPC_STATUS RpcMgmtBindingInqParameter(RPC_BINDING_HANDLE,uint,uint*); 
    444 RPC_STATUS RpcMgmtBindingSetParameter(RPC_BINDING_HANDLE,uint,uint); 
     441RPC_STATUS RpcMgmtInqParameter(uint, uint*); 
     442RPC_STATUS RpcMgmtSetParameter(uint, uint); 
     443RPC_STATUS RpcMgmtBindingInqParameter(RPC_BINDING_HANDLE, uint, uint*); 
     444RPC_STATUS RpcMgmtBindingSetParameter(RPC_BINDING_HANDLE, uint, uint); 
    445445 
    446446static if (_WIN32_WINNT >= 0x0500) { 
    447 RPC_STATUS UuidCreateSequential(UUID*); 
    448 
    449  
     447    RPC_STATUS UuidCreateSequential(UUID*); 
     448
  • trunk/win32/rpcdcep.d

    r99 r135  
    3131const TRANSPORT_TYPE_WMSG=8; 
    3232 
    33 struct RPC_VERSION
     33struct RPC_VERSION
    3434    ushort MajorVersion; 
    3535    ushort MinorVersion; 
    3636} 
    37 struct RPC_SYNTAX_IDENTIFIER
     37struct RPC_SYNTAX_IDENTIFIER
    3838    GUID SyntaxGUID; 
    3939    RPC_VERSION SyntaxVersion; 
     
    4141alias RPC_SYNTAX_IDENTIFIER * PRPC_SYNTAX_IDENTIFIER; 
    4242 
    43 struct RPC_MESSAGE
     43struct RPC_MESSAGE
    4444    HANDLE Handle; 
    4545    uint DataRepresentation; 
     
    6767alias RPC_DISPATCH_TABLE * PRPC_DISPATCH_TABLE; 
    6868 
    69 struct RPC_PROTSEQ_ENDPOINT
     69struct RPC_PROTSEQ_ENDPOINT
    7070    ubyte *RpcProtocolSequence; 
    7171    ubyte *Endpoint; 
     
    7373alias RPC_PROTSEQ_ENDPOINT * PRPC_PROTSEQ_ENDPOINT; 
    7474 
    75 struct RPC_SERVER_INTERFACE
     75struct RPC_SERVER_INTERFACE
    7676    uint Length; 
    7777    RPC_SYNTAX_IDENTIFIER InterfaceId; 
     
    8585alias RPC_SERVER_INTERFACE * PRPC_SERVER_INTERFACE; 
    8686 
    87 struct RPC_CLIENT_INTERFACE
     87struct RPC_CLIENT_INTERFACE
    8888    uint Length; 
    8989    RPC_SYNTAX_IDENTIFIER InterfaceId; 
     
    9999typedef void *I_RPC_MUTEX; 
    100100 
    101 struct RPC_TRANSFER_SYNTAX
     101struct RPC_TRANSFER_SYNTAX
    102102    GUID Uuid; 
    103103    ushort VersMajor; 
  • trunk/win32/rpcndr.d

    r108 r135  
    114114 
    115115alias void * NDR_CCONTEXT; 
    116 struct tagNDR_SCONTEXT
     116struct tagNDR_SCONTEXT
    117117    void *pad[2]; 
    118118    void *userContext; 
     
    122122alias void function (void*) NDR_RUNDOWN; 
    123123 
    124 struct SCONTEXT_QUEUE
     124struct SCONTEXT_QUEUE
    125125    uint NumberOfObjects; 
    126126    NDR_SCONTEXT *ArrayOfObjects; 
     
    183183 
    184184align(4): 
    185 struct MIDL_STUB_MESSAGE
     185struct MIDL_STUB_MESSAGE
    186186    PRPC_MESSAGE RpcMsg; 
    187187    ubyte *Buffer; 
     
    238238alias void* function (void*) GENERIC_BINDING_ROUTINE; 
    239239alias void function (void*,ubyte*) GENERIC_UNBIND_ROUTINE; 
    240 struct GENERIC_BINDING_ROUTINE_PAIR
     240struct GENERIC_BINDING_ROUTINE_PAIR
    241241    GENERIC_BINDING_ROUTINE pfnBind; 
    242242    GENERIC_UNBIND_ROUTINE pfnUnbind; 
     
    244244alias GENERIC_BINDING_ROUTINE_PAIR * PGENERIC_BINDING_ROUTINE_PAIR; 
    245245 
    246 struct GENERIC_BINDING_INFO
     246struct GENERIC_BINDING_INFO
    247247    void *pObj; 
    248248    uint Size; 
     
    253253 
    254254alias void function(PMIDL_STUB_MESSAGE) XMIT_HELPER_ROUTINE; 
    255 struct XMIT_ROUTINE_QUINTUPLE
     255struct XMIT_ROUTINE_QUINTUPLE
    256256    XMIT_HELPER_ROUTINE pfnTranslateToXmit; 
    257257    XMIT_HELPER_ROUTINE pfnTranslateFromXmit; 
     
    261261alias XMIT_ROUTINE_QUINTUPLE * PXMIT_ROUTINE_QUINTUPLE; 
    262262 
    263 struct MALLOC_FREE_STRUCT
     263struct MALLOC_FREE_STRUCT
    264264    void* function (uint) pfnAllocate; 
    265265    void function (void*) pfnFree; 
    266266} 
    267267 
    268 struct COMM_FAULT_OFFSETS
     268struct COMM_FAULT_OFFSETS
    269269    short CommOffset; 
    270270    short FaultOffset; 
     
    276276alias void function (uint *,void *) USER_MARSHAL_FREEING_ROUTINE; 
    277277 
    278 struct USER_MARSHAL_ROUTINE_QUADRUPLE
     278struct USER_MARSHAL_ROUTINE_QUADRUPLE
    279279    USER_MARSHAL_SIZING_ROUTINE pfnBufferSize; 
    280280    USER_MARSHAL_MARSHALLING_ROUTINE pfnMarshall; 
     
    285285alias void function () NDR_NOTIFY_ROUTINE; 
    286286 
    287 enum IDL_CS_CONVERT
     287enum IDL_CS_CONVERT
    288288    IDL_CS_NO_CONVERT, 
    289289    IDL_CS_IN_PLACE_CONVERT, 
     
    296296alias void function (RPC_BINDING_HANDLE,int,uint*,uint*,uint*,error_status_t*) CS_TAG_GETTING_ROUTINE; 
    297297 
    298 struct NDR_CS_SIZE_CONVERT_ROUTINES
     298struct NDR_CS_SIZE_CONVERT_ROUTINES
    299299    CS_TYPE_NET_SIZE_ROUTINE pfnNetSize; 
    300300    CS_TYPE_TO_NETCS_ROUTINE pfnToNetCs; 
     
    303303} 
    304304 
    305 struct NDR_CS_ROUTINES
     305struct NDR_CS_ROUTINES
    306306    NDR_CS_SIZE_CONVERT_ROUTINES *pSizeConvertRoutines; 
    307307    CS_TAG_GETTING_ROUTINE *pTagGettingRoutines; 
    308308} 
    309309 
    310 struct MIDL_STUB_DESC
     310struct MIDL_STUB_DESC
    311311    void* RpcInterfaceInformation; 
    312312    void* function(uint) pfnAllocate; 
     
    338338alias void * PMIDL_XMIT_TYPE; 
    339339 
    340 struct MIDL_FORMAT_STRING
     340struct MIDL_FORMAT_STRING
    341341    short Pad; 
    342342    ubyte Format[1]; 
     
    356356alias MIDL_SERVER_INFO * PMIDL_SERVER_INFO; 
    357357 
    358 struct MIDL_STUBLESS_PROXY_INFO
     358struct MIDL_STUBLESS_PROXY_INFO
    359359    PMIDL_STUB_DESC pStubDesc; 
    360360    PFORMAT_STRING ProcFormatString; 
     
    380380alias FULL_PTR_TO_REFID_ELEMENT * PFULL_PTR_TO_REFID_ELEMENT; 
    381381 
    382 struct FULL_PTR_XLAT_TABLES
     382struct FULL_PTR_XLAT_TABLES
    383383    struct RefIdToPointer { 
    384384        void **XlatTable; 
  • trunk/win32/rpcnsi.d

    r127 r135  
    6969    } else { 
    7070        const bool _WIN32_USE_UNICODE = false; 
    71     }   
     71    } 
    7272} else { 
    7373        const bool _WIN32_USE_UNICODE = false; 
  • trunk/win32/shellapi.d

    r127 r135  
    1111module win32.shellapi; 
    1212pragma(lib, "shell32.lib"); 
     13 
    1314private import win32.w32api, win32.windef; 
    1415 
     
    8384 
    8485const UINT 
    85     NIF_MESSAGE = 0x00000001, 
    86     NIF_ICON    = 0x00000002, 
    87     NIF_TIP        = 0x00000004, 
    88     NIF_STATE   = 0x00000008; 
     86    NIF_MESSAGE = 1, 
     87    NIF_ICON    = 2, 
     88    NIF_TIP     = 4, 
     89    NIF_STATE   = 8; 
    8990 
    9091static if (_WIN32_IE >= 0x500) { 
  • trunk/win32/shlobj.d

    r127 r135  
    225225} 
    226226 
    227 const TCHAR [] 
     227const TCHAR[] 
    228228    CFSTR_SHELLIDLIST       = "Shell IDList Array", 
    229229    CFSTR_SHELLIDLISTOFFSET = "Shell Object Offsets", 
     
    374374alias DWORD SHGDNF; 
    375375 
    376 struct CIDA
    377     UINT cidl; 
    378     UINT aoffset[1]
     376struct CIDA
     377    UINT    cidl; 
     378    UINT[1] aoffset
    379379} 
    380380alias CIDA* LPIDA; 
    381381 
    382 struct SHITEMID
    383     USHORT cb; 
    384     BYTE   abID[1]
     382struct SHITEMID
     383    USHORT  cb; 
     384    BYTE[1] abID
    385385} 
    386386alias SHITEMID* LPSHITEMID, LPCSHITEMID; 
    387387 
    388 struct ITEMIDLIST
     388struct ITEMIDLIST
    389389    SHITEMID mkid; 
    390390} 
    391391alias ITEMIDLIST* LPITEMIDLIST, LPCITEMIDLIST; 
    392392 
    393 alias int function (HWND,UINT,LPARAM,LPARAM) BFFCALLBACK; 
     393alias int function(HWND,UINT,LPARAM,LPARAM) BFFCALLBACK; 
    394394 
    395395struct BROWSEINFOA { 
    396     HWND   hwndOwner; 
    397     LPCITEMIDLIST  pidlRoot; 
    398     LPSTR  pszDisplayName; 
    399     LPCSTR lpszTitle; 
    400     UINT   ulFlags; 
    401     BFFCALLBACK    lpfn; 
    402     LPARAM lParam; 
    403     int    iImage; 
     396    HWND          hwndOwner; 
     397    LPCITEMIDLIST pidlRoot; 
     398    LPSTR         pszDisplayName; 
     399    LPCSTR        lpszTitle; 
     400    UINT          ulFlags; 
     401    BFFCALLBACK   lpfn; 
     402    LPARAM        lParam; 
     403    int           iImage; 
    404404} 
    405405alias BROWSEINFOA* PBROWSEINFOA, LPBROWSEINFOA; 
    406406 
    407 struct BROWSEINFOW
    408     HWND   hwndOwner; 
    409     LPCITEMIDLIST  pidlRoot; 
    410     LPWSTR pszDisplayName; 
    411     LPCWSTR    lpszTitle; 
    412     UINT   ulFlags; 
    413     BFFCALLBACK    lpfn; 
    414     LPARAM lParam; 
    415     int    iImage; 
     407struct BROWSEINFOW
     408    HWND          hwndOwner; 
     409    LPCITEMIDLIST pidlRoot; 
     410    LPWSTR        pszDisplayName; 
     411    LPCWSTR       lpszTitle; 
     412    UINT          ulFlags; 
     413    BFFCALLBACK   lpfn; 
     414    LPARAM        lParam; 
     415    int           iImage; 
    416416} 
    417417alias BROWSEINFOW* PBROWSEINFOW, LPBROWSEINFOW; 
    418418 
    419 struct CMINVOKECOMMANDINFO
     419struct CMINVOKECOMMANDINFO
    420420    DWORD cbSize; 
    421421    DWORD fMask; 
     
    430430alias CMINVOKECOMMANDINFO* LPCMINVOKECOMMANDINFO; 
    431431 
    432 struct DROPFILES
     432struct DROPFILES
    433433    DWORD pFiles; 
    434434    POINT pt; 
     
    438438alias DROPFILES* LPDROPFILES; 
    439439 
    440 enum SHGNO
     440enum SHGNO
    441441    SHGDN_NORMAL             = 0, 
    442442    SHGDN_INFOLDER, 
     
    447447} 
    448448 
    449 enum SHCONTF
     449enum SHCONTF
    450450    SHCONTF_FOLDERS            = 32, 
    451451    SHCONTF_NONFOLDERS         = 64, 
     
    457457} 
    458458 
    459 struct STRRET
     459struct STRRET
    460460    UINT uType; 
    461461    union { 
     
    478478} 
    479479 
    480 struct FILEDESCRIPTORA
     480struct FILEDESCRIPTORA
    481481    DWORD dwFlags; 
    482482    CLSID clsid; 
     
    493493alias FILEDESCRIPTORA* LPFILEDESCRIPTORA; 
    494494 
    495 struct FILEDESCRIPTORW
     495struct FILEDESCRIPTORW
    496496    DWORD dwFlags; 
    497497    CLSID clsid; 
     
    508508alias FILEDESCRIPTORW* LPFILEDESCRIPTORW; 
    509509 
    510 struct FILEGROUPDESCRIPTORA
     510struct FILEGROUPDESCRIPTORA
    511511    UINT cItems; 
    512512    FILEDESCRIPTORA fgd[1]; 
     
    514514alias FILEGROUPDESCRIPTORA* LPFILEGROUPDESCRIPTORA; 
    515515 
    516 struct FILEGROUPDESCRIPTORW
     516struct FILEGROUPDESCRIPTORW
    517517    UINT cItems; 
    518518    FILEDESCRIPTORW fgd[1]; 
     
    579579alias FVSHOWINFO* LPFVSHOWINFO; 
    580580 
    581 struct NRESARRAY
     581struct NRESARRAY
    582582    UINT cItems; 
    583583    NETRESOURCE nr[1]; 
     
    611611 
    612612    struct EXTRASEARCH 
    613    
     613   
    614614        GUID guidSearch; 
    615615        WCHAR wszFriendlyName[80]; 
     
    634634 
    635635    struct PERSIST_FOLDER_TARGET_INFO 
    636    
     636   
    637637        LPITEMIDLIST pidlTargetFolder; 
    638638        WCHAR szTargetParsingName[MAX_PATH]; 
     
    743743 
    744744    interface IColumnProvider : public IUnknown 
    745    
     745   
    746746        HRESULT QueryInterface(REFIID,PVOID*); 
    747747        ULONG AddRef(); 
     
    10621062alias GUID SHELLVIEWID; 
    10631063 
    1064 struct SV2CVW2_PARAMS
     1064struct SV2CVW2_PARAMS
    10651065    DWORD cbSize; 
    10661066    IShellView *psvPrev; 
     
    12221222 
    12231223    interface IDragSourceHelper : public IUnknown 
    1224    
     1224   
    12251225        HRESULT QueryInterface(REFIID riid, void **ppv); 
    12261226        ULONG AddRef(); 
     
    12311231 
    12321232    interface IDropTargetHelper : public IUnknown 
    1233    
     1233   
    12341234        HRESULT QueryInterface(REFIID riid, void** ppv); 
    12351235        ULONG AddRef(); 
     
    13511351    alias LPFILEGROUPDESCRIPTORA LPFILEGROUPDESCRIPTOR; 
    13521352} 
    1353     alias BROWSEINFO* PBROWSEINFO, LPBROWSEINFO; 
    1354  
    1355 align: 
     1353alias BROWSEINFO* PBROWSEINFO, LPBROWSEINFO; 
  • trunk/win32/sqlext.d

    r127 r135  
    546546const SQL_PRED_SEARCHABLE = SQL_SEARCHABLE; 
    547547 
    548 //MACRO #define SQL_POSITION_TO(s,r) SQLSetPos(s,r,SQL_POSITION,SQL_LOCK_NO_CHANGE) 
    549  
    550 //MACRO #define SQL_LOCK_RECORD(s,r,l) SQLSetPos(s,r,SQL_POSITION,l) 
    551  
    552 //MACRO #define SQL_REFRESH_RECORD(s,r,l) SQLSetPos(s,r,SQL_REFRESH,l) 
    553  
    554 //MACRO #define SQL_UPDATE_RECORD(s,r) SQLSetPos(s,r,SQL_UPDATE,SQL_LOCK_NO_CHANGE) 
    555  
    556 //MACRO #define SQL_DELETE_RECORD(s,r) SQLSetPos(s,r,SQL_DELETE,SQL_LOCK_NO_CHANGE) 
    557  
    558 //MACRO #define SQL_ADD_RECORD(s,r) SQLSetPos(s,r,SQL_ADD,SQL_LOCK_NO_CHANGE) 
     548//MACRO #define SQL_POSITION_TO(s, r) SQLSetPos(s, r, SQL_POSITION, SQL_LOCK_NO_CHANGE) 
     549 
     550//MACRO #define SQL_LOCK_RECORD(s, r, l) SQLSetPos(s, r, SQL_POSITION, l) 
     551 
     552//MACRO #define SQL_REFRESH_RECORD(s, r, l) SQLSetPos(s, r, SQL_REFRESH, l) 
     553 
     554//MACRO #define SQL_UPDATE_RECORD(s, r) SQLSetPos(s, r, SQL_UPDATE, SQL_LOCK_NO_CHANGE) 
     555 
     556//MACRO #define SQL_DELETE_RECORD(s, r) SQLSetPos(s, r, SQL_DELETE, SQL_LOCK_NO_CHANGE) 
     557 
     558//MACRO #define SQL_ADD_RECORD(s, r) SQLSetPos(s, r, SQL_ADD, SQL_LOCK_NO_CHANGE) 
    559559 
    560560 
    561561static if (ODBCVER < 0x0300) { 
    562 const SQL_CONNECT_OPT_DRVR_START = 1000; 
    563 const SQL_CONN_OPT_MAX = SQL_PACKET_SIZE; 
    564 const SQL_CONN_OPT_MIN = SQL_ACCESS_MODE; 
    565 const SQL_STMT_OPT_MAX = SQL_ROW_NUMBER; 
    566 const SQL_STMT_OPT_MIN = SQL_QUERY_TIMEOUT; 
    567 const SQL_TYPE_DRIVER_START = SQL_INTERVAL_YEAR; 
    568 const SQL_TYPE_DRIVER_END = SQL_UNICODE_LONGVARCHAR; 
    569 const SQL_TYPE_MIN = SQL_BIT; 
    570 const SQL_TYPE_MAX = SQL_VARCHAR; 
     562   const SQL_CONNECT_OPT_DRVR_START = 1000; 
     563   const SQL_CONN_OPT_MAX = SQL_PACKET_SIZE; 
     564   const SQL_CONN_OPT_MIN = SQL_ACCESS_MODE; 
     565   const SQL_STMT_OPT_MAX = SQL_ROW_NUMBER; 
     566   const SQL_STMT_OPT_MIN = SQL_QUERY_TIMEOUT; 
     567   const SQL_TYPE_DRIVER_START = SQL_INTERVAL_YEAR; 
     568   const SQL_TYPE_DRIVER_END = SQL_UNICODE_LONGVARCHAR; 
     569   const SQL_TYPE_MIN = SQL_BIT; 
     570   const SQL_TYPE_MAX = SQL_VARCHAR; 
    571571} 
    572572 
    573573static if (ODBCVER < 0x0300) { 
    574 const SQL_NO_DATA_FOUND = 100; 
    575 const SQL_INTERVAL_YEAR = -80; 
    576 const SQL_INTERVAL_MONTH = -81; 
    577 const SQL_INTERVAL_YEAR_TO_MONTH = -82; 
    578 const SQL_INTERVAL_DAY = -83; 
    579 const SQL_INTERVAL_HOUR = -84; 
    580 const SQL_INTERVAL_MINUTE = -85; 
    581 const SQL_INTERVAL_SECOND = -86; 
    582 const SQL_INTERVAL_DAY_TO_HOUR = -87; 
    583 const SQL_INTERVAL_DAY_TO_MINUTE = -88; 
    584 const SQL_INTERVAL_DAY_TO_SECOND = -89; 
    585 const SQL_INTERVAL_HOUR_TO_MINUTE = -90; 
    586 const SQL_INTERVAL_HOUR_TO_SECOND = -91; 
    587 const SQL_INTERVAL_MINUTE_TO_SECOND = -92; 
     574   const SQL_NO_DATA_FOUND = 100; 
     575   const SQL_INTERVAL_YEAR = -80; 
     576   const SQL_INTERVAL_MONTH = -81; 
     577   const SQL_INTERVAL_YEAR_TO_MONTH = -82; 
     578   const SQL_INTERVAL_DAY = -83; 
     579   const SQL_INTERVAL_HOUR = -84; 
     580   const SQL_INTERVAL_MINUTE = -85; 
     581   const SQL_INTERVAL_SECOND = -86; 
     582   const SQL_INTERVAL_DAY_TO_HOUR = -87; 
     583   const SQL_INTERVAL_DAY_TO_MINUTE = -88; 
     584   const SQL_INTERVAL_DAY_TO_SECOND = -89; 
     585   const SQL_INTERVAL_HOUR_TO_MINUTE = -90; 
     586   const SQL_INTERVAL_HOUR_TO_SECOND = -91; 
     587   const SQL_INTERVAL_MINUTE_TO_SECOND = -92; 
    588588} else { 
    589 const SQL_NO_DATA_FOUND = SQL_NO_DATA; 
    590 const SQL_CODE_YEAR = 1; 
    591 const SQL_CODE_MONTH = 2; 
    592 const SQL_CODE_DAY = 3; 
    593 const SQL_CODE_HOUR = 4; 
    594 const SQL_CODE_MINUTE = 5; 
    595 const SQL_CODE_SECOND = 6; 
    596 const SQL_CODE_YEAR_TO_MONTH = 7; 
    597 const SQL_CODE_DAY_TO_HOUR = 8; 
    598 const SQL_CODE_DAY_TO_MINUTE = 9; 
    599 const SQL_CODE_DAY_TO_SECOND = 10; 
    600 const SQL_CODE_HOUR_TO_MINUTE = 11; 
    601 const SQL_CODE_HOUR_TO_SECOND = 12; 
    602 const SQL_CODE_MINUTE_TO_SECOND = 13; 
    603 const SQL_INTERVAL_YEAR = 100 + SQL_CODE_YEAR; 
    604 const SQL_INTERVAL_MONTH = 100 + SQL_CODE_MONTH; 
    605 const SQL_INTERVAL_DAY = 100 + SQL_CODE_DAY; 
    606 const SQL_INTERVAL_HOUR = 100 + SQL_CODE_HOUR; 
    607 const SQL_INTERVAL_MINUTE = 100 + SQL_CODE_MINUTE; 
    608 const SQL_INTERVAL_SECOND = 100 + SQL_CODE_SECOND; 
    609 const SQL_INTERVAL_YEAR_TO_MONTH = 100 + SQL_CODE_YEAR_TO_MONTH; 
    610 const SQL_INTERVAL_DAY_TO_HOUR = 100 + SQL_CODE_DAY_TO_HOUR; 
    611 const SQL_INTERVAL_DAY_TO_MINUTE = 100 + SQL_CODE_DAY_TO_MINUTE; 
    612 const SQL_INTERVAL_DAY_TO_SECOND = 100 + SQL_CODE_DAY_TO_SECOND; 
    613 const SQL_INTERVAL_HOUR_TO_MINUTE = 100 + SQL_CODE_HOUR_TO_MINUTE; 
    614 const SQL_INTERVAL_HOUR_TO_SECOND = 100 + SQL_CODE_HOUR_TO_SECOND; 
    615 const SQL_INTERVAL_MINUTE_TO_SECOND = 100 + SQL_CODE_MINUTE_TO_SECOND; 
     589   const SQL_NO_DATA_FOUND = SQL_NO_DATA; 
     590   const SQL_CODE_YEAR = 1; 
     591   const SQL_CODE_MONTH = 2; 
     592   const SQL_CODE_DAY = 3; 
     593   const SQL_CODE_HOUR = 4; 
     594   const SQL_CODE_MINUTE = 5; 
     595   const SQL_CODE_SECOND = 6; 
     596   const SQL_CODE_YEAR_TO_MONTH = 7; 
     597   const SQL_CODE_DAY_TO_HOUR = 8; 
     598   const SQL_CODE_DAY_TO_MINUTE = 9; 
     599   const SQL_CODE_DAY_TO_SECOND = 10; 
     600   const SQL_CODE_HOUR_TO_MINUTE = 11; 
     601   const SQL_CODE_HOUR_TO_SECOND = 12; 
     602   const SQL_CODE_MINUTE_TO_SECOND = 13; 
     603   const SQL_INTERVAL_YEAR = 100 + SQL_CODE_YEAR; 
     604   const SQL_INTERVAL_MONTH = 100 + SQL_CODE_MONTH; 
     605   const SQL_INTERVAL_DAY = 100 + SQL_CODE_DAY; 
     606   const SQL_INTERVAL_HOUR = 100 + SQL_CODE_HOUR; 
     607   const SQL_INTERVAL_MINUTE = 100 + SQL_CODE_MINUTE; 
     608   const SQL_INTERVAL_SECOND = 100 + SQL_CODE_SECOND; 
     609   const SQL_INTERVAL_YEAR_TO_MONTH = 100 + SQL_CODE_YEAR_TO_MONTH; 
     610   const SQL_INTERVAL_DAY_TO_HOUR = 100 + SQL_CODE_DAY_TO_HOUR; 
     611   const SQL_INTERVAL_DAY_TO_MINUTE = 100 + SQL_CODE_DAY_TO_MINUTE; 
     612   const SQL_INTERVAL_DAY_TO_SECOND = 100 + SQL_CODE_DAY_TO_SECOND; 
     613   const SQL_INTERVAL_HOUR_TO_MINUTE = 100 + SQL_CODE_HOUR_TO_MINUTE; 
     614   const SQL_INTERVAL_HOUR_TO_SECOND = 100 + SQL_CODE_HOUR_TO_SECOND; 
     615   const SQL_INTERVAL_MINUTE_TO_SECOND = 100 + SQL_CODE_MINUTE_TO_SECOND; 
    616616}//[Yes] #endif 
    617617 
     
    627627 
    628628static if (ODBCVER >= 0x0300) { 
    629 const SQL_ACTIVE_ENVIRONMENTS = 116; 
    630 const SQL_AD_ADD_CONSTRAINT_DEFERRABLE = 0x00000080L; 
    631 const SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED = 0x00000020L; 
    632 const SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000040L; 
    633 const SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE = 0x00000100L; 
    634 const SQL_AD_ADD_DOMAIN_CONSTRAINT = 0x00000002L; 
    635 const SQL_AD_ADD_DOMAIN_DEFAULT = 0x00000008L; 
    636 const SQL_AD_CONSTRAINT_NAME_DEFINITION = 0x00000001L; 
    637 const SQL_AD_DROP_DOMAIN_CONSTRAINT = 0x00000004L; 
    638 const SQL_AD_DROP_DOMAIN_DEFAULT = 0x00000010L; 
    639 const SQL_AF_ALL = 0x00000040L; 
    640 const SQL_AF_AVG = 0x00000001L; 
    641 const SQL_AF_COUNT = 0x00000002L; 
    642 const SQL_AF_DISTINCT = 0x00000020L; 
    643 const SQL_AF_MAX = 0x00000004L; 
    644 const SQL_AF_MIN = 0x00000008L; 
    645 const SQL_AF_SUM = 0x00000010L; 
    646 const SQL_AGGREGATE_FUNCTIONS = 169; 
    647 const SQL_ALL_CATALOGS = "%"; 
    648 const SQL_ALL_SCHEMAS = "%"; 
    649 const SQL_ALL_TABLE_TYPES = "%"; 
    650 const SQL_ALTER_DOMAIN = 117; 
    651 const SQL_AM_CONNECTION = 1; 
    652 const SQL_AM_NONE = 0; 
    653 const SQL_AM_STATEMENT = 2; 
    654 const SQL_API_ODBC3_ALL_FUNCTIONS = 999; 
    655 const SQL_API_ODBC3_ALL_FUNCTIONS_SIZE = 250; 
    656 const SQL_API_SQLALLOCHANDLESTD = 73; 
    657 const SQL_API_SQLBULKOPERATIONS = 24; 
    658 const SQL_ASYNC_MODE = 10021; 
    659 const SQL_AT_ADD_COLUMN_COLLATION = 0x00000080L; 
    660 const SQL_AT_ADD_COLUMN_DEFAULT = 0x00000040L; 
    661 const SQL_AT_ADD_COLUMN_SINGLE = 0x00000020L; 
    662 const SQL_AT_ADD_TABLE_CONSTRAINT = 0x00001000L; 
    663 const SQL_AT_CONSTRAINT_DEFERRABLE = 0x00040000L; 
    664 const SQL_AT_CONSTRAINT_INITIALLY_DEFERRED = 0x00010000L; 
    665 const SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00020000L; 
    666 const SQL_AT_CONSTRAINT_NAME_DEFINITION = 0x00008000L; 
    667 const SQL_AT_CONSTRAINT_NON_DEFERRABLE = 0x00080000L; 
    668 const SQL_AT_DROP_COLUMN_CASCADE = 0x00000400L; 
    669 const SQL_AT_DROP_COLUMN_DEFAULT = 0x00000200L; 
    670 const SQL_AT_DROP_COLUMN_RESTRICT = 0x00000800L; 
    671 const SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE = 0x00002000L; 
    672 const SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT = 0x00004000L; 
    673 const SQL_AT_SET_COLUMN_DEFAULT = 0x00000100L; 
    674 const SQL_ATTR_ACCESS_MODE = SQL_ACCESS_MODE; 
    675 const SQL_ATTR_ASYNC_ENABLE = 4; 
    676 const SQL_ATTR_AUTOCOMMIT = SQL_AUTOCOMMIT; 
    677 const SQL_ATTR_CONCURRENCY = SQL_CONCURRENCY; 
    678 const SQL_ATTR_CONNECTION_POOLING = 201; 
    679 const SQL_ATTR_CONNECTION_TIMEOUT = 113; 
    680 const SQL_ATTR_CP_MATCH = 202; 
    681 const SQL_ATTR_CURRENT_CATALOG = SQL_CURRENT_QUALIFIER; 
    682 const SQL_ATTR_CURSOR_TYPE = SQL_CURSOR_TYPE; 
    683 const SQL_ATTR_DISCONNECT_BEHAVIOR = 114; 
    684 const SQL_ATTR_ENABLE_AUTO_IPD = 15; 
    685 const SQL_ATTR_ENLIST_IN_DTC = 1207; 
    686 const SQL_ATTR_ENLIST_IN_XA = 1208; 
    687 const SQL_ATTR_FETCH_BOOKMARK_PTR = 16; 
    688 const SQL_ATTR_KEYSET_SIZE = SQL_KEYSET_SIZE; 
    689 const SQL_ATTR_LOGIN_TIMEOUT = SQL_LOGIN_TIMEOUT; 
    690 const SQL_ATTR_MAX_LENGTH = SQL_MAX_LENGTH; 
    691 const SQL_ATTR_MAX_ROWS = SQL_MAX_ROWS; 
    692 const SQL_ATTR_NOSCAN = SQL_NOSCAN; 
    693 const SQL_ATTR_ODBC_CURSORS = SQL_ODBC_CURSORS; 
    694 const SQL_ATTR_ODBC_VERSION = 200; 
    695 const SQL_ATTR_PACKET_SIZE = SQL_PACKET_SIZE; 
    696 const SQL_ATTR_PARAM_BIND_OFFSET_PTR = 17; 
    697 const SQL_ATTR_PARAM_BIND_TYPE = 18; 
    698 const SQL_ATTR_PARAM_OPERATION_PTR = 19; 
    699 const SQL_ATTR_PARAM_STATUS_PTR = 20; 
    700 const SQL_ATTR_PARAMS_PROCESSED_PTR = 21; 
    701 const SQL_ATTR_PARAMSET_SIZE = 22; 
    702 const SQL_ATTR_QUERY_TIMEOUT = SQL_QUERY_TIMEOUT; 
    703 const SQL_ATTR_QUIET_MODE = SQL_QUIET_MODE; 
    704 const SQL_ATTR_RETRIEVE_DATA = SQL_RETRIEVE_DATA; 
    705 const SQL_ATTR_ROW_ARRAY_SIZE = 27; 
    706 const SQL_ATTR_ROW_BIND_OFFSET_PTR = 23; 
    707 const SQL_ATTR_ROW_BIND_TYPE = SQL_BIND_TYPE; 
    708 const SQL_ATTR_ROW_NUMBER = SQL_ROW_NUMBER; 
    709 const SQL_ATTR_ROW_OPERATION_PTR = 24; 
    710 const SQL_ATTR_ROW_STATUS_PTR = 25; 
    711 const SQL_ATTR_ROWS_FETCHED_PTR = 26; 
    712 const SQL_ATTR_SIMULATE_CURSOR = SQL_SIMULATE_CURSOR; 
    713 const SQL_ATTR_TRACE = SQL_OPT_TRACE; 
    714 const SQL_ATTR_TRACEFILE = SQL_OPT_TRACEFILE; 
    715 const SQL_ATTR_TRANSLATE_LIB = SQL_TRANSLATE_DLL; 
    716 const SQL_ATTR_TRANSLATE_OPTION = SQL_TRANSLATE_OPTION; 
    717 const SQL_ATTR_TXN_ISOLATION = SQL_TXN_ISOLATION; 
    718 const SQL_ATTR_USE_BOOKMARKS = SQL_USE_BOOKMARKS; 
    719 const SQL_BATCH_ROW_COUNT = 120; 
    720 const SQL_BATCH_SUPPORT = 121; 
    721 const SQL_BRC_EXPLICIT = 0x0000002; 
    722 const SQL_BRC_PROCEDURES = 0x0000001; 
    723 const SQL_BRC_ROLLED_UP = 0x0000004; 
    724 const SQL_BS_ROW_COUNT_EXPLICIT = 0x00000002L; 
    725 const SQL_BS_ROW_COUNT_PROC = 0x00000008L; 
    726 const SQL_BS_SELECT_EXPLICIT = 0x00000001L; 
    727 const SQL_BS_SELECT_PROC = 0x00000004L; 
    728 const SQL_C_INTERVAL_DAY = SQL_INTERVAL_DAY; 
    729 const SQL_C_INTERVAL_DAY_TO_HOUR = SQL_INTERVAL_DAY_TO_HOUR; 
    730 const SQL_C_INTERVAL_DAY_TO_MINUTE = SQL_INTERVAL_DAY_TO_MINUTE; 
    731 const SQL_C_INTERVAL_DAY_TO_SECOND = SQL_INTERVAL_DAY_TO_SECOND; 
    732 const SQL_C_INTERVAL_HOUR = SQL_INTERVAL_HOUR; 
    733 const SQL_C_INTERVAL_HOUR_TO_MINUTE = SQL_INTERVAL_HOUR_TO_MINUTE; 
    734 const SQL_C_INTERVAL_HOUR_TO_SECOND = SQL_INTERVAL_HOUR_TO_SECOND; 
    735 const SQL_C_INTERVAL_MINUTE = SQL_INTERVAL_MINUTE; 
    736 const SQL_C_INTERVAL_MINUTE_TO_SECOND = SQL_INTERVAL_MINUTE_TO_SECOND; 
    737 const SQL_C_INTERVAL_MONTH = SQL_INTERVAL_MONTH; 
    738 const SQL_C_INTERVAL_SECOND = SQL_INTERVAL_SECOND; 
    739 const SQL_C_INTERVAL_YEAR = SQL_INTERVAL_YEAR; 
    740 const SQL_C_INTERVAL_YEAR_TO_MONTH = SQL_INTERVAL_YEAR_TO_MONTH; 
    741 const SQL_C_NUMERIC = SQL_NUMERIC; 
    742 const SQL_C_SBIGINT = SQL_BIGINT+SQL_SIGNED_OFFSET; 
    743 const SQL_C_TYPE_DATE = SQL_TYPE_DATE; 
    744 const SQL_C_TYPE_TIME = SQL_TYPE_TIME; 
    745 const SQL_C_TYPE_TIMESTAMP = SQL_TYPE_TIMESTAMP; 
    746 const SQL_C_UBIGINT = SQL_BIGINT+SQL_UNSIGNED_OFFSET; 
    747 const SQL_C_VARBOOKMARK = SQL_C_BINARY; 
    748 const SQL_CA_CONSTRAINT_DEFERRABLE = 0x00000040L; 
    749 const SQL_CA_CONSTRAINT_INITIALLY_DEFERRED = 0x00000010L; 
    750 const SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000020L; 
    751 const SQL_CA_CONSTRAINT_NON_DEFERRABLE = 0x00000080L; 
    752 const SQL_CA_CREATE_ASSERTION = 0x00000001L; 
    753 const SQL_CA1_ABSOLUTE = 0x00000002L; 
    754 const SQL_CA1_BOOKMARK = 0x00000008L; 
    755 const SQL_CA1_BULK_ADD = 0x00010000L; 
    756 const SQL_CA1_BULK_DELETE_BY_BOOKMARK = 0x00040000L; 
    757 const SQL_CA1_BULK_FETCH_BY_BOOKMARK = 0x00080000L; 
    758 const SQL_CA1_BULK_UPDATE_BY_BOOKMARK = 0x00020000L; 
    759 const SQL_CA1_LOCK_EXCLUSIVE = 0x00000080L; 
    760 const SQL_CA1_LOCK_NO_CHANGE = 0x00000040L; 
    761 const SQL_CA1_LOCK_UNLOCK = 0x00000100L; 
    762 const SQL_CA1_NEXT = 0x00000001L; 
    763 const SQL_CA1_POS_DELETE = 0x00000800L; 
    764 const SQL_CA1_POS_POSITION = 0x00000200L; 
    765 const SQL_CA1_POS_REFRESH = 0x00001000L; 
    766 const SQL_CA1_POS_UPDATE = 0x00000400L; 
    767 const SQL_CA1_POSITIONED_DELETE = 0x00004000L; 
    768 const SQL_CA1_POSITIONED_UPDATE = 0x00002000L; 
    769 const SQL_CA1_RELATIVE = 0x00000004L; 
    770 const SQL_CA1_SELECT_FOR_UPDATE = 0x00008000L; 
    771 const SQL_CA2_CRC_APPROXIMATE = 0x00002000L; 
    772 const SQL_CA2_CRC_EXACT = 0x00001000L; 
    773 const SQL_CA2_LOCK_CONCURRENCY = 0x00000002L; 
    774  
    775 const SQL_CA2_MAX_ROWS_CATALOG = 0x00000800L; 
    776 const SQL_CA2_MAX_ROWS_DELETE  = 0x00000200L; 
    777 const SQL_CA2_MAX_ROWS_INSERT  = 0x00000100L; 
    778 const SQL_CA2_MAX_ROWS_SELECT  = 0x00000080L; 
    779 const SQL_CA2_MAX_ROWS_UPDATE  = 0x00000400L; 
    780 const SQL_CA2_MAX_ROWS_AFFECTS_ALL = SQL_CA2_MAX_ROWS_SELECT | SQL_CA2_MAX_ROWS_INSERT | 
    781     SQL_CA2_MAX_ROWS_DELETE | SQL_CA2_MAX_ROWS_UPDATE | SQL_CA2_MAX_ROWS_CATALOG; 
    782  
    783 const SQL_CA2_OPT_ROWVER_CONCURRENCY = 0x00000004L; 
    784 const SQL_CA2_OPT_VALUES_CONCURRENCY = 0x00000008L; 
    785 const SQL_CA2_READ_ONLY_CONCURRENCY = 0x00000001L; 
    786 const SQL_CA2_SENSITIVITY_ADDITIONS = 0x00000010L; 
    787 const SQL_CA2_SENSITIVITY_DELETIONS = 0x00000020L; 
    788 const SQL_CA2_SENSITIVITY_UPDATES = 0x00000040L; 
    789 const SQL_CA2_SIMULATE_NON_UNIQUE = 0x00004000L; 
    790 const SQL_CA2_SIMULATE_TRY_UNIQUE = 0x00008000L; 
    791 const SQL_CA2_SIMULATE_UNIQUE = 0x00010000L; 
    792 const SQL_CATALOG_LOCATION = SQL_QUALIFIER_LOCATION; 
    793 const SQL_CATALOG_NAME_SEPARATOR = SQL_QUALIFIER_NAME_SEPARATOR; 
    794 const SQL_CATALOG_TERM = SQL_QUALIFIER_TERM; 
    795 const SQL_CATALOG_USAGE = SQL_QUALIFIER_USAGE; 
    796 const SQL_CCOL_CREATE_COLLATION = 0x00000001L; 
    797 const SQL_CCS_COLLATE_CLAUSE = 0x00000002L; 
    798 const SQL_CCS_CREATE_CHARACTER_SET = 0x00000001L; 
    799 const SQL_CCS_LIMITED_COLLATION = 0x00000004L; 
    800 const SQL_CDO_COLLATION = 0x00000008L; 
    801 const SQL_CDO_CONSTRAINT = 0x00000004L; 
    802 const SQL_CDO_CONSTRAINT_DEFERRABLE = 0x00000080L; 
    803 const SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED = 0x00000020L; 
    804 const SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000040L; 
    805 const SQL_CDO_CONSTRAINT_NAME_DEFINITION = 0x00000010L; 
    806 const SQL_CDO_CONSTRAINT_NON_DEFERRABLE = 0x00000100L; 
    807 const SQL_CDO_CREATE_DOMAIN = 0x00000001L; 
    808 const SQL_CDO_DEFAULT = 0x00000002L; 
    809 const SQL_CL_END = SQL_QL_END; 
    810 const SQL_CL_START = SQL_QL_START; 
    811 const SQL_COL_PRED_BASIC = SQL_ALL_EXCEPT_LIKE; 
    812 const SQL_COL_PRED_CHAR = SQL_LIKE_ONLY; 
    813 const SQL_COLUMN_DRIVER_START = 1000; 
    814 const SQL_COLUMN_IGNORE = SQL_IGNORE; 
    815 const SQL_COLUMN_NUMBER_UNKNOWN = -2; 
    816 const SQL_CONVERT_GUID = 173; 
    817  
    818 const SQL_CONVERT_WCHAR               = 122; 
    819 const SQL_CONVERT_INTERVAL_DAY_TIME   = 123; 
    820 const SQL_CONVERT_INTERVAL_YEAR_MONTH = 124; 
    821 const SQL_CONVERT_WLONGVARCHAR        = 125; 
    822 const SQL_CONVERT_WVARCHAR            = 126; 
    823  
    824 const SQL_CREATE_ASSERTION     = 127; 
    825 const SQL_CREATE_CHARACTER_SET = 128; 
    826 const SQL_CREATE_COLLATION     = 129; 
    827 const SQL_CREATE_DOMAIN        = 130; 
    828 const SQL_CREATE_SCHEMA        = 131; 
    829 const SQL_CREATE_TABLE         = 132; 
    830 const SQL_CREATE_TRANSLATION   = 133; 
    831 const SQL_CREATE_VIEW          = 134; 
    832  
    833  
    834 const SQL_CP_OFF            = 0UL; 
    835 const SQL_CP_DEFAULT        = SQL_CP_OFF; 
    836 const SQL_CP_ONE_PER_DRIVER = 1UL; 
    837 const SQL_CP_ONE_PER_HENV   = 2UL; 
    838  
    839 const SQL_CP_STRICT_MATCH  = 0UL; 
    840 const SQL_CP_MATCH_DEFAULT = SQL_CP_STRICT_MATCH; 
    841 const SQL_CP_RELAXED_MATCH = 1UL; 
    842  
    843 const SQL_CS_CREATE_SCHEMA         = 0x00000001L; 
    844 const SQL_CS_AUTHORIZATION         = 0x00000002L; 
    845 const SQL_CS_DEFAULT_CHARACTER_SET = 0x00000004L; 
    846  
    847 const SQL_CT_COLUMN_COLLATION = 0x00000800L; 
    848 const SQL_CT_COLUMN_CONSTRAINT = 0x00000200L; 
    849 const SQL_CT_COLUMN_DEFAULT = 0x00000400L; 
    850 const SQL_CT_COMMIT_DELETE = 0x00000004L; 
    851 const SQL_CT_COMMIT_PRESERVE = 0x00000002L; 
    852 const SQL_CT_CONSTRAINT_DEFERRABLE = 0x00000080L; 
    853 const SQL_CT_CONSTRAINT_INITIALLY_DEFERRED = 0x00000020L; 
    854 const SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000040L; 
    855 const SQL_CT_CONSTRAINT_NAME_DEFINITION = 0x00002000L; 
    856 const SQL_CT_CONSTRAINT_NON_DEFERRABLE = 0x00000100L; 
    857 const SQL_CT_CREATE_TABLE = 0x00000001L; 
    858 const SQL_CT_GLOBAL_TEMPORARY = 0x00000008L; 
    859 const SQL_CT_LOCAL_TEMPORARY = 0x00000010L; 
    860 const SQL_CT_TABLE_CONSTRAINT = 0x00001000L; 
    861  
    862 const SQL_CTR_CREATE_TRANSLATION = 0x00000001L; 
    863  
    864 const SQL_CU_DML_STATEMENTS = SQL_QU_DML_STATEMENTS; 
    865 const SQL_CU_INDEX_DEFINITION = SQL_QU_INDEX_DEFINITION; 
    866 const SQL_CU_PRIVILEGE_DEFINITION = SQL_QU_PRIVILEGE_DEFINITION; 
    867 const SQL_CU_PROCEDURE_INVOCATION = SQL_QU_PROCEDURE_INVOCATION; 
    868 const SQL_CU_TABLE_DEFINITION = SQL_QU_TABLE_DEFINITION; 
    869  
    870 const SQL_CVT_INTERVAL_YEAR_MONTH = 0x00080000L; 
    871 const SQL_CVT_INTERVAL_DAY_TIME   = 0x00100000L; 
    872 const SQL_CVT_WCHAR               = 0x00200000L; 
    873 const SQL_CVT_WLONGVARCHAR        = 0x00400000L; 
    874 const SQL_CVT_WVARCHAR            = 0x00800000L; 
    875 const SQL_CVT_GUID                = 0x01000000L; 
    876  
    877 const SQL_DA_DROP_ASSERTION = 0x00000001L; 
    878 const SQL_DATETIME_LITERALS = 119; 
    879  
    880 const SQL_DB_DISCONNECT     = 1UL; 
    881 const SQL_DB_RETURN_TO_POOL = 0UL; 
    882 const SQL_DB_DEFAULT        = SQL_DB_RETURN_TO_POOL; 
    883  
    884 const SQL_DC_DROP_COLLATION = 0x00000001L; 
    885 const SQL_DCS_DROP_CHARACTER_SET = 0x00000001L; 
    886 const SQL_DD_CASCADE = 0x00000004L; 
    887 const SQL_DD_DROP_DOMAIN = 0x00000001L; 
    888 const SQL_DD_RESTRICT = 0x00000002L; 
    889 const SQL_DDL_INDEX = 170; 
    890 const SQL_DELETE_BY_BOOKMARK = 6; 
    891 const SQL_DESC_ARRAY_SIZE = 20; 
    892 const SQL_DESC_ARRAY_STATUS_PTR = 21; 
    893 const SQL_DESC_AUTO_UNIQUE_VALUE = SQL_COLUMN_AUTO_INCREMENT; 
    894 const SQL_DESC_BASE_COLUMN_NAME = 22; 
    895 const SQL_DESC_BASE_TABLE_NAME = 23; 
    896 const SQL_DESC_BIND_OFFSET_PTR = 24; 
    897 const SQL_DESC_BIND_TYPE = 25; 
    898 const SQL_DESC_CASE_SENSITIVE = SQL_COLUMN_CASE_SENSITIVE; 
    899 const SQL_DESC_CATALOG_NAME = SQL_COLUMN_QUALIFIER_NAME; 
    900 const SQL_DESC_CONCISE_TYPE = SQL_COLUMN_TYPE; 
    901 const SQL_DESC_DATETIME_INTERVAL_PRECISION = 26; 
    902 const SQL_DESC_DISPLAY_SIZE = SQL_COLUMN_DISPLAY_SIZE; 
    903 const SQL_DESC_FIXED_PREC_SCALE = SQL_COLUMN_MONEY; 
    904 const SQL_DESC_LABEL = SQL_COLUMN_LABEL; 
    905 const SQL_DESC_LITERAL_PREFIX = 27; 
    906 const SQL_DESC_LITERAL_SUFFIX = 28; 
    907 const SQL_DESC_LOCAL_TYPE_NAME = 29; 
    908 const SQL_DESC_MAXIMUM_SCALE = 30; 
    909 const SQL_DESC_MINIMUM_SCALE = 31; 
    910 const SQL_DESC_NUM_PREC_RADIX = 32; 
    911 const SQL_DESC_PARAMETER_TYPE = 33; 
    912 const SQL_DESC_ROWS_PROCESSED_PTR = 34; 
    913 const SQL_DESC_SCHEMA_NAME = SQL_COLUMN_OWNER_NAME; 
    914 const SQL_DESC_SEARCHABLE = SQL_COLUMN_SEARCHABLE; 
    915 const SQL_DESC_TABLE_NAME = SQL_COLUMN_TABLE_NAME; 
    916 const SQL_DESC_TYPE_NAME = SQL_COLUMN_TYPE_NAME; 
    917 const SQL_DESC_UNSIGNED = SQL_COLUMN_UNSIGNED; 
    918 const SQL_DESC_UPDATABLE = SQL_COLUMN_UPDATABLE; 
    919 const SQL_DI_CREATE_INDEX = 0x00000001L; 
    920 const SQL_DI_DROP_INDEX = 0x00000002L; 
    921  
    922 const SQL_DIAG_COLUMN_NUMBER = -1247; 
    923 const SQL_DIAG_ROW_NUMBER = -1248; 
    924 const SQL_DIAG_CURSOR_ROW_COUNT = -1249; 
    925  
    926 const SQL_DL_SQL92_DATE = 0x00000001L; 
    927 const SQL_DL_SQL92_INTERVAL_DAY = 0x00000020L; 
    928 const SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR = 0x00000400L; 
    929 const SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE = 0x00000800L; 
    930 const SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND = 0x00001000L; 
    931 const SQL_DL_SQL92_INTERVAL_HOUR = 0x00000040L; 
    932 const SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE = 0x00002000L; 
    933 const SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND = 0x00004000L; 
    934 const SQL_DL_SQL92_INTERVAL_MINUTE = 0x00000080L; 
    935 const SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND = 0x00008000L; 
    936 const SQL_DL_SQL92_INTERVAL_MONTH = 0x00000010L; 
    937 const SQL_DL_SQL92_INTERVAL_SECOND = 0x00000100L; 
    938 const SQL_DL_SQL92_INTERVAL_YEAR = 0x00000008L; 
    939 const SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH = 0x00000200L; 
    940 const SQL_DL_SQL92_TIME = 0x00000002L; 
    941 const SQL_DL_SQL92_TIMESTAMP = 0x00000004L; 
    942 const SQL_DM_VER = 171; 
    943 const SQL_DRIVER_HDESC = 135; 
    944 const SQL_DROP_ASSERTION = 136; 
    945 const SQL_DROP_CHARACTER_SET = 137; 
    946 const SQL_DROP_COLLATION = 138; 
    947 const SQL_DROP_DOMAIN = 139; 
    948 const SQL_DROP_SCHEMA = 140; 
    949 const SQL_DROP_TABLE = 141; 
    950 const SQL_DROP_TRANSLATION = 142; 
    951 const SQL_DROP_VIEW = 143; 
    952 const SQL_DS_CASCADE = 0x00000004L; 
    953 const SQL_DS_DROP_SCHEMA = 0x00000001L; 
    954 const SQL_DS_RESTRICT = 0x00000002L; 
    955 const SQL_DT_CASCADE = 0x00000004L; 
    956 const SQL_DT_DROP_TABLE = 0x00000001L; 
    957 const SQL_DT_RESTRICT = 0x00000002L; 
    958 const SQL_DTC_DONE = 0L; 
    959 const SQL_DTR_DROP_TRANSLATION = 0x00000001L; 
    960 const SQL_DV_CASCADE = 0x00000004L; 
    961 const SQL_DV_DROP_VIEW = 0x00000001L; 
    962 const SQL_DV_RESTRICT = 0x00000002L; 
    963 const SQL_DYNAMIC_CURSOR_ATTRIBUTES1 = 144; 
    964 const SQL_DYNAMIC_CURSOR_ATTRIBUTES2 = 145; 
    965 const SQL_EXT_API_LAST = SQL_API_SQLBINDPARAMETER; 
    966 const SQL_EXT_API_START = 40; 
    967 const SQL_FETCH_BY_BOOKMARK = 7; 
    968 const SQL_FETCH_FIRST_SYSTEM = 32; 
    969 const SQL_FETCH_FIRST_USER = 31; 
    970 const SQL_FN_CVT_CAST = 0x00000002L; 
    971 const SQL_FN_STR_BIT_LENGTH = 0x00080000L; 
    972 const SQL_FN_STR_CHAR_LENGTH = 0x00100000L; 
    973 const SQL_FN_STR_CHARACTER_LENGTH = 0x00200000L; 
    974 const SQL_FN_STR_OCTET_LENGTH = 0x00400000L; 
    975 const SQL_FN_STR_POSITION = 0x00800000L; 
    976 const SQL_FN_TD_CURRENT_DATE = 0x00020000L; 
    977 const SQL_FN_TD_CURRENT_TIME = 0x00040000L; 
    978 const SQL_FN_TD_CURRENT_TIMESTAMP = 0x00080000L; 
    979 const SQL_FN_TD_EXTRACT = 0x00100000L; 
    980 const SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 = 146; 
    981 const SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 = 147; 
    982 /* #define SQL_FUNC_EXISTS(exists, api) 
    983    ((*(((UWORD*) (exists)) + ((api) >> 4)) & (1 << ((api) & 15)) ) ? 
    984    SQL_TRUE : SQL_FALSE ) 
    985 */ 
    986 const SQL_GB_COLLATE = 0x0004; 
    987 const SQL_HANDLE_SENV = 5; 
    988  
    989 const SQL_IK_NONE = 0; 
    990 const SQL_IK_ASC = 1; 
    991 const SQL_IK_DESC = 2; 
    992 const SQL_IK_ALL = SQL_IK_ASC | SQL_IK_DESC; 
    993  
    994 const SQL_INDEX_KEYWORDS = 148; 
    995 const SQL_INFO_DRIVER_START = 1000; 
    996 const SQL_INFO_LAST = SQL_QUALIFIER_LOCATION; 
    997 const SQL_INFO_SCHEMA_VIEWS = 149; 
    998 const SQL_INITIALLY_DEFERRED = 5; 
    999 const SQL_INITIALLY_IMMEDIATE = 6; 
    1000 const SQL_INSERT_STATEMENT = 172; 
    1001 const SQL_INTERVAL = 10; 
    1002 const SQL_IS_INSERT_LITERALS = 0x00000001L; 
    1003 const SQL_IS_INSERT_SEARCHED = 0x00000002L; 
    1004 const SQL_IS_INTEGER = -6; 
    1005 const SQL_IS_POINTER = -4; 
    1006 const SQL_IS_SELECT_INTO = 0x00000004L; 
    1007 const SQL_IS_SMALLINT = -8; 
    1008 const SQL_IS_UINTEGER = -5; 
    1009 const SQL_IS_USMALLINT = -7; 
    1010 const SQL_ISV_ASSERTIONS = 0x00000001L; 
    1011 const SQL_ISV_CHARACTER_SETS = 0x00000002L; 
    1012 const SQL_ISV_CHECK_CONSTRAINTS = 0x00000004L; 
    1013 const SQL_ISV_COLLATIONS = 0x00000008L; 
    1014 const SQL_ISV_COLUMN_DOMAIN_USAGE = 0x00000010L; 
    1015 const SQL_ISV_COLUMN_PRIVILEGES = 0x00000020L; 
    1016 const SQL_ISV_COLUMNS = 0x00000040L; 
    1017 const SQL_ISV_CONSTRAINT_COLUMN_USAGE = 0x00000080L; 
    1018 const SQL_ISV_CONSTRAINT_TABLE_USAGE = 0x00000100L; 
    1019 const SQL_ISV_DOMAIN_CONSTRAINTS = 0x00000200L; 
    1020 const SQL_ISV_DOMAINS = 0x00000400L; 
    1021 const SQL_ISV_KEY_COLUMN_USAGE = 0x00000800L; 
    1022 const SQL_ISV_REFERENTIAL_CONSTRAINTS = 0x00001000L; 
    1023 const SQL_ISV_SCHEMATA = 0x00002000L; 
    1024 const SQL_ISV_SQL_LANGUAGES = 0x00004000L; 
    1025 const SQL_ISV_TABLE_CONSTRAINTS = 0x00008000L; 
    1026 const SQL_ISV_TABLE_PRIVILEGES = 0x00010000L; 
    1027 const SQL_ISV_TABLES = 0x00020000L; 
    1028 const SQL_ISV_TRANSLATIONS = 0x00040000L; 
    1029 const SQL_ISV_USAGE_PRIVILEGES = 0x00080000L; 
    1030 const SQL_ISV_VIEW_COLUMN_USAGE = 0x00100000L; 
    1031 const SQL_ISV_VIEW_TABLE_USAGE = 0x00200000L; 
    1032 const SQL_ISV_VIEWS = 0x00400000L; 
    1033 const SQL_KEYSET_CURSOR_ATTRIBUTES1 = 150; 
    1034 const SQL_KEYSET_CURSOR_ATTRIBUTES2 = 151; 
    1035 const SQL_MAX_ASYNC_CONCURRENT_STATEMENTS = 10022; 
    1036 const SQL_NO_COLUMN_NUMBER = -1; 
    1037 const SQL_NO_ROW_NUMBER = -1; 
    1038 const SQL_NOT_DEFERRABLE = 7; 
    1039 const SQL_NUM_EXTENSIONS = SQL_EXT_API_LAST-SQL_EXT_API_START+1; 
    1040 const SQL_NUM_FUNCTIONS = 23; 
    1041 const SQL_ODBC_INTERFACE_CONFORMANCE = 152; 
    1042  
    1043 enum : ULONG { 
    1044     SQL_OIC_CORE = 1, 
    1045     SQL_OIC_LEVEL1, 
    1046     SQL_OIC_LEVEL2 
    1047 
    1048 enum : ULONG { 
    1049     SQL_OV_ODBC2 = 2, 
    1050     SQL_OV_ODBC3 = 3 
    1051 
    1052  
    1053 const ULONG 
    1054     SQL_PARAM_BIND_BY_COLUMN = 0, 
    1055     SQL_PARAM_BIND_TYPE_DEFAULT = SQL_PARAM_BIND_BY_COLUMN; 
    1056      
    1057 const SQL_PARAM_ARRAY_ROW_COUNTS = 153; 
    1058 const SQL_PARAM_ARRAY_SELECTS = 154; 
    1059 const SQL_PARAM_DIAG_UNAVAILABLE = 1; 
    1060 const SQL_PARAM_ERROR = 5; 
    1061 const SQL_PARAM_IGNORE = 1; 
    1062 const SQL_PARAM_PROCEED = 0; 
    1063 const SQL_PARAM_SUCCESS = 0; 
    1064 const SQL_PARAM_SUCCESS_WITH_INFO = 6; 
    1065 const SQL_PARAM_UNUSED = 7; 
    1066  
    1067 const SQL_PARC_BATCH = 1; 
    1068 const SQL_PARC_NO_BATCH = 2; 
    1069 const SQL_PAS_BATCH = 1; 
    1070 const SQL_PAS_NO_BATCH = 2; 
    1071 const SQL_PAS_NO_SELECT = 3; 
    1072  
    1073 const SQL_ROW_IGNORE = 1; 
    1074 const SQL_ROW_NUMBER_UNKNOWN = -2; 
    1075 const SQL_ROW_PROCEED = 0; 
    1076 const SQL_ROW_SUCCESS_WITH_INFO = 6; 
    1077  
    1078 const SQL_SC_FIPS127_2_TRANSITIONAL = 0x00000002L; 
    1079 const SQL_SC_SQL92_ENTRY = 0x00000001L; 
    1080 const SQL_SC_SQL92_FULL = 0x00000008L; 
    1081 const SQL_SC_SQL92_INTERMEDIATE = 0x00000004L; 
    1082  
    1083 const SQL_SCC_ISO92_CLI = 0x00000002L; 
    1084 const SQL_SCC_XOPEN_CLI_VERSION1 = 0x00000001L; 
    1085  
    1086 const SQL_SCHEMA_TERM = SQL_OWNER_TERM; 
    1087 const SQL_SCHEMA_USAGE = SQL_OWNER_USAGE; 
    1088 const SQL_SDF_CURRENT_DATE = 0x00000001L; 
    1089 const SQL_SDF_CURRENT_TIME = 0x00000002L; 
    1090 const SQL_SDF_CURRENT_TIMESTAMP = 0x00000004L; 
    1091 const SQL_SFKD_CASCADE = 0x00000001L; 
    1092 const SQL_SFKD_NO_ACTION = 0x00000002L; 
    1093 const SQL_SFKD_SET_DEFAULT = 0x00000004L; 
    1094 const SQL_SFKD_SET_NULL = 0x00000008L; 
    1095 const SQL_SFKU_CASCADE = 0x00000001L; 
    1096 const SQL_SFKU_NO_ACTION = 0x00000002L; 
    1097 const SQL_SFKU_SET_DEFAULT = 0x00000004L; 
    1098 const SQL_SFKU_SET_NULL = 0x00000008L; 
    1099 const SQL_SG_DELETE_TABLE = 0x00000020L; 
    1100 const SQL_SG_INSERT_COLUMN = 0x00000080L; 
    1101 const SQL_SG_INSERT_TABLE = 0x00000040L; 
    1102 const SQL_SG_REFERENCES_COLUMN = 0x00000200L; 
    1103 const SQL_SG_REFERENCES_TABLE = 0x00000100L; 
    1104 const SQL_SG_SELECT_TABLE = 0x00000400L; 
    1105 const SQL_SG_UPDATE_COLUMN = 0x00001000L; 
    1106 const SQL_SG_UPDATE_TABLE = 0x00000800L; 
    1107 const SQL_SG_USAGE_ON_CHARACTER_SET = 0x00000002L; 
    1108 const SQL_SG_USAGE_ON_COLLATION = 0x00000004L; 
    1109 const SQL_SG_USAGE_ON_DOMAIN = 0x00000001L; 
    1110 const SQL_SG_USAGE_ON_TRANSLATION = 0x00000008L; 
    1111 const SQL_SG_WITH_GRANT_OPTION = 0x00000010L; 
    1112 const SQL_SNVF_BIT_LENGTH = 0x00000001L; 
    1113 const SQL_SNVF_CHAR_LENGTH = 0x00000002L; 
    1114 const SQL_SNVF_CHARACTER_LENGTH = 0x00000004L; 
    1115 const SQL_SNVF_EXTRACT = 0x00000008L; 
    1116 const SQL_SNVF_OCTET_LENGTH = 0x00000010L; 
    1117 const SQL_SNVF_POSITION = 0x00000020L; 
    1118 const SQL_SP_BETWEEN = 0x00000800L; 
    1119 const SQL_SP_COMPARISON = 0x00001000L; 
    1120 const SQL_SP_EXISTS = 0x00000001L; 
    1121 const SQL_SP_IN = 0x00000400L; 
    1122 const SQL_SP_ISNOTNULL = 0x00000002L; 
    1123 const SQL_SP_ISNULL = 0x00000004L; 
    1124 const SQL_SP_LIKE = 0x00000200L; 
    1125 const SQL_SP_MATCH_FULL = 0x00000008L; 
    1126 const SQL_SP_MATCH_PARTIAL = 0x00000010L; 
    1127 const SQL_SP_MATCH_UNIQUE_FULL = 0x00000020L; 
    1128 const SQL_SP_MATCH_UNIQUE_PARTIAL = 0x00000040L; 
    1129 const SQL_SP_OVERLAPS = 0x00000080L; 
    1130 const SQL_SP_QUANTIFIED_COMPARISON = 0x00002000L; 
    1131 const SQL_SP_UNIQUE = 0x00000100L; 
    1132 const SQL_SQL_CONFORMANCE = 118; 
    1133 const SQL_SQL92_DATETIME_FUNCTIONS = 155; 
    1134 const SQL_SQL92_FOREIGN_KEY_DELETE_RULE = 156; 
    1135 const SQL_SQL92_FOREIGN_KEY_UPDATE_RULE = 157; 
    1136 const SQL_SQL92_GRANT = 158; 
    1137 const SQL_SQL92_NUMERIC_VALUE_FUNCTIONS = 159; 
    1138 const SQL_SQL92_PREDICATES = 160; 
    1139 const SQL_SQL92_RELATIONAL_JOIN_OPERATORS = 161; 
    1140 const SQL_SQL92_REVOKE = 162; 
    1141 const SQL_SQL92_ROW_VALUE_CONSTRUCTOR = 163; 
    1142 const SQL_SQL92_STRING_FUNCTIONS = 164; 
    1143 const SQL_SQL92_VALUE_EXPRESSIONS = 165; 
    1144 const SQL_SR_CASCADE = 0x00000020L; 
    1145 const SQL_SR_DELETE_TABLE = 0x00000080L; 
    1146 const SQL_SR_GRANT_OPTION_FOR = 0x00000010L; 
    1147 const SQL_SR_INSERT_COLUMN = 0x00000200L; 
    1148 const SQL_SR_INSERT_TABLE = 0x00000100L; 
    1149 const SQL_SR_REFERENCES_COLUMN = 0x00000800L; 
    1150 const SQL_SR_REFERENCES_TABLE = 0x00000400L; 
    1151 const SQL_SR_RESTRICT = 0x00000040L; 
    1152 const SQL_SR_SELECT_TABLE = 0x00001000L; 
    1153 const SQL_SR_UPDATE_COLUMN = 0x00004000L; 
    1154 const SQL_SR_UPDATE_TABLE = 0x00002000L; 
    1155 const SQL_SR_USAGE_ON_CHARACTER_SET = 0x00000002L; 
    1156 const SQL_SR_USAGE_ON_COLLATION = 0x00000004L; 
    1157 const SQL_SR_USAGE_ON_DOMAIN = 0x00000001L; 
    1158 const SQL_SR_USAGE_ON_TRANSLATION = 0x00000008L; 
    1159 const SQL_SRJO_CORRESPONDING_CLAUSE = 0x00000001L; 
    1160 const SQL_SRJO_CROSS_JOIN = 0x00000002L; 
    1161 const SQL_SRJO_EXCEPT_JOIN = 0x00000004L; 
    1162 const SQL_SRJO_FULL_OUTER_JOIN = 0x00000008L; 
    1163 const SQL_SRJO_INNER_JOIN = 0x00000010L; 
    1164 const SQL_SRJO_INTERSECT_JOIN = 0x00000020L; 
    1165 const SQL_SRJO_LEFT_OUTER_JOIN = 0x00000040L; 
    1166 const SQL_SRJO_NATURAL_JOIN = 0x00000080L; 
    1167 const SQL_SRJO_RIGHT_OUTER_JOIN = 0x00000100L; 
    1168 const SQL_SRJO_UNION_JOIN = 0x00000200L; 
    1169 const SQL_SRVC_DEFAULT = 0x00000004L; 
    1170 const SQL_SRVC_NULL = 0x00000002L; 
    1171 const SQL_SRVC_ROW_SUBQUERY = 0x00000008L; 
    1172 const SQL_SRVC_VALUE_EXPRESSION = 0x00000001L; 
    1173 const SQL_SSF_CONVERT = 0x00000001L; 
    1174 const SQL_SSF_LOWER = 0x00000002L; 
    1175 const SQL_SSF_SUBSTRING = 0x00000008L; 
    1176 const SQL_SSF_TRANSLATE = 0x00000010L; 
    1177 const SQL_SSF_TRIM_BOTH = 0x00000020L; 
    1178 const SQL_SSF_TRIM_LEADING = 0x00000040L; 
    1179 const SQL_SSF_TRIM_TRAILING = 0x00000080L; 
    1180 const SQL_SSF_UPPER = 0x00000004L; 
    1181 const SQL_STANDARD_CLI_CONFORMANCE = 166; 
    1182 const SQL_STATIC_CURSOR_ATTRIBUTES1 = 167; 
    1183 const SQL_STATIC_CURSOR_ATTRIBUTES2 = 168; 
    1184 const SQL_SU_DML_STATEMENTS = SQL_OU_DML_STATEMENTS; 
    1185 const SQL_SU_INDEX_DEFINITION = SQL_OU_INDEX_DEFINITION; 
    1186 const SQL_SU_PRIVILEGE_DEFINITION = SQL_OU_PRIVILEGE_DEFINITION; 
    1187 const SQL_SU_PROCEDURE_INVOCATION = SQL_OU_PROCEDURE_INVOCATION; 
    1188 const SQL_SU_TABLE_DEFINITION = SQL_OU_TABLE_DEFINITION; 
    1189 const SQL_SVE_CASE = 0x00000001L; 
    1190 const SQL_SVE_CAST = 0x00000002L; 
    1191 const SQL_SVE_COALESCE = 0x00000004L; 
    1192 const SQL_SVE_NULLIF = 0x00000008L; 
    1193 const SQL_UB_FIXED = SQL_UB_ON; 
    1194 const SQL_UB_VARIABLE = 2UL; 
    1195 const SQL_UNION_STATEMENT = SQL_UNION; 
    1196 const SQL_UPDATE_BY_BOOKMARK = 5; 
    1197 const SQL_US_UNION = SQL_U_UNION; 
    1198 const SQL_US_UNION_ALL = SQL_U_UNION_ALL; 
     629   const SQL_ACTIVE_ENVIRONMENTS = 116; 
     630   const SQL_AD_ADD_CONSTRAINT_DEFERRABLE = 0x00000080L; 
     631   const SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED = 0x00000020L; 
     632   const SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000040L; 
     633   const SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE = 0x00000100L; 
     634   const SQL_AD_ADD_DOMAIN_CONSTRAINT = 0x00000002L; 
     635   const SQL_AD_ADD_DOMAIN_DEFAULT = 0x00000008L; 
     636   const SQL_AD_CONSTRAINT_NAME_DEFINITION = 0x00000001L; 
     637   const SQL_AD_DROP_DOMAIN_CONSTRAINT = 0x00000004L; 
     638   const SQL_AD_DROP_DOMAIN_DEFAULT = 0x00000010L; 
     639   const SQL_AF_ALL = 0x00000040L; 
     640   const SQL_AF_AVG = 0x00000001L; 
     641   const SQL_AF_COUNT = 0x00000002L; 
     642   const SQL_AF_DISTINCT = 0x00000020L; 
     643   const SQL_AF_MAX = 0x00000004L; 
     644   const SQL_AF_MIN = 0x00000008L; 
     645   const SQL_AF_SUM = 0x00000010L; 
     646   const SQL_AGGREGATE_FUNCTIONS = 169; 
     647   const SQL_ALL_CATALOGS = "%"; 
     648   const SQL_ALL_SCHEMAS = "%"; 
     649   const SQL_ALL_TABLE_TYPES = "%"; 
     650   const SQL_ALTER_DOMAIN = 117; 
     651   const SQL_AM_CONNECTION = 1; 
     652   const SQL_AM_NONE = 0; 
     653   const SQL_AM_STATEMENT = 2; 
     654   const SQL_API_ODBC3_ALL_FUNCTIONS = 999; 
     655   const SQL_API_ODBC3_ALL_FUNCTIONS_SIZE = 250; 
     656   const SQL_API_SQLALLOCHANDLESTD = 73; 
     657   const SQL_API_SQLBULKOPERATIONS = 24; 
     658   const SQL_ASYNC_MODE = 10021; 
     659   const SQL_AT_ADD_COLUMN_COLLATION = 0x00000080L; 
     660   const SQL_AT_ADD_COLUMN_DEFAULT = 0x00000040L; 
     661   const SQL_AT_ADD_COLUMN_SINGLE = 0x00000020L; 
     662   const SQL_AT_ADD_TABLE_CONSTRAINT = 0x00001000L; 
     663   const SQL_AT_CONSTRAINT_DEFERRABLE = 0x00040000L; 
     664   const SQL_AT_CONSTRAINT_INITIALLY_DEFERRED = 0x00010000L; 
     665   const SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00020000L; 
     666   const SQL_AT_CONSTRAINT_NAME_DEFINITION = 0x00008000L; 
     667   const SQL_AT_CONSTRAINT_NON_DEFERRABLE = 0x00080000L; 
     668   const SQL_AT_DROP_COLUMN_CASCADE = 0x00000400L; 
     669   const SQL_AT_DROP_COLUMN_DEFAULT = 0x00000200L; 
     670   const SQL_AT_DROP_COLUMN_RESTRICT = 0x00000800L; 
     671   const SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE = 0x00002000L; 
     672   const SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT = 0x00004000L; 
     673   const SQL_AT_SET_COLUMN_DEFAULT = 0x00000100L; 
     674   const SQL_ATTR_ACCESS_MODE = SQL_ACCESS_MODE; 
     675   const SQL_ATTR_ASYNC_ENABLE = 4; 
     676   const SQL_ATTR_AUTOCOMMIT = SQL_AUTOCOMMIT; 
     677   const SQL_ATTR_CONCURRENCY = SQL_CONCURRENCY; 
     678   const SQL_ATTR_CONNECTION_POOLING = 201; 
     679   const SQL_ATTR_CONNECTION_TIMEOUT = 113; 
     680   const SQL_ATTR_CP_MATCH = 202; 
     681   const SQL_ATTR_CURRENT_CATALOG = SQL_CURRENT_QUALIFIER; 
     682   const SQL_ATTR_CURSOR_TYPE = SQL_CURSOR_TYPE; 
     683   const SQL_ATTR_DISCONNECT_BEHAVIOR = 114; 
     684   const SQL_ATTR_ENABLE_AUTO_IPD = 15; 
     685   const SQL_ATTR_ENLIST_IN_DTC = 1207; 
     686   const SQL_ATTR_ENLIST_IN_XA = 1208; 
     687   const SQL_ATTR_FETCH_BOOKMARK_PTR = 16; 
     688   const SQL_ATTR_KEYSET_SIZE = SQL_KEYSET_SIZE; 
     689   const SQL_ATTR_LOGIN_TIMEOUT = SQL_LOGIN_TIMEOUT; 
     690   const SQL_ATTR_MAX_LENGTH = SQL_MAX_LENGTH; 
     691   const SQL_ATTR_MAX_ROWS = SQL_MAX_ROWS; 
     692   const SQL_ATTR_NOSCAN = SQL_NOSCAN; 
     693   const SQL_ATTR_ODBC_CURSORS = SQL_ODBC_CURSORS; 
     694   const SQL_ATTR_ODBC_VERSION = 200; 
     695   const SQL_ATTR_PACKET_SIZE = SQL_PACKET_SIZE; 
     696   const SQL_ATTR_PARAM_BIND_OFFSET_PTR = 17; 
     697   const SQL_ATTR_PARAM_BIND_TYPE = 18; 
     698   const SQL_ATTR_PARAM_OPERATION_PTR = 19; 
     699   const SQL_ATTR_PARAM_STATUS_PTR = 20; 
     700   const SQL_ATTR_PARAMS_PROCESSED_PTR = 21; 
     701   const SQL_ATTR_PARAMSET_SIZE = 22; 
     702   const SQL_ATTR_QUERY_TIMEOUT = SQL_QUERY_TIMEOUT; 
     703   const SQL_ATTR_QUIET_MODE = SQL_QUIET_MODE; 
     704   const SQL_ATTR_RETRIEVE_DATA = SQL_RETRIEVE_DATA; 
     705   const SQL_ATTR_ROW_ARRAY_SIZE = 27; 
     706   const SQL_ATTR_ROW_BIND_OFFSET_PTR = 23; 
     707   const SQL_ATTR_ROW_BIND_TYPE = SQL_BIND_TYPE; 
     708   const SQL_ATTR_ROW_NUMBER = SQL_ROW_NUMBER; 
     709   const SQL_ATTR_ROW_OPERATION_PTR = 24; 
     710   const SQL_ATTR_ROW_STATUS_PTR = 25; 
     711   const SQL_ATTR_ROWS_FETCHED_PTR = 26; 
     712   const SQL_ATTR_SIMULATE_CURSOR = SQL_SIMULATE_CURSOR; 
     713   const SQL_ATTR_TRACE = SQL_OPT_TRACE; 
     714   const SQL_ATTR_TRACEFILE = SQL_OPT_TRACEFILE; 
     715   const SQL_ATTR_TRANSLATE_LIB = SQL_TRANSLATE_DLL; 
     716   const SQL_ATTR_TRANSLATE_OPTION = SQL_TRANSLATE_OPTION; 
     717   const SQL_ATTR_TXN_ISOLATION = SQL_TXN_ISOLATION; 
     718   const SQL_ATTR_USE_BOOKMARKS = SQL_USE_BOOKMARKS; 
     719   const SQL_BATCH_ROW_COUNT = 120; 
     720   const SQL_BATCH_SUPPORT = 121; 
     721   const SQL_BRC_EXPLICIT = 0x0000002; 
     722   const SQL_BRC_PROCEDURES = 0x0000001; 
     723   const SQL_BRC_ROLLED_UP = 0x0000004; 
     724   const SQL_BS_ROW_COUNT_EXPLICIT = 0x00000002L; 
     725   const SQL_BS_ROW_COUNT_PROC = 0x00000008L; 
     726   const SQL_BS_SELECT_EXPLICIT = 0x00000001L; 
     727   const SQL_BS_SELECT_PROC = 0x00000004L; 
     728   const SQL_C_INTERVAL_DAY = SQL_INTERVAL_DAY; 
     729   const SQL_C_INTERVAL_DAY_TO_HOUR = SQL_INTERVAL_DAY_TO_HOUR; 
     730   const SQL_C_INTERVAL_DAY_TO_MINUTE = SQL_INTERVAL_DAY_TO_MINUTE; 
     731   const SQL_C_INTERVAL_DAY_TO_SECOND = SQL_INTERVAL_DAY_TO_SECOND; 
     732   const SQL_C_INTERVAL_HOUR = SQL_INTERVAL_HOUR; 
     733   const SQL_C_INTERVAL_HOUR_TO_MINUTE = SQL_INTERVAL_HOUR_TO_MINUTE; 
     734   const SQL_C_INTERVAL_HOUR_TO_SECOND = SQL_INTERVAL_HOUR_TO_SECOND; 
     735   const SQL_C_INTERVAL_MINUTE = SQL_INTERVAL_MINUTE; 
     736   const SQL_C_INTERVAL_MINUTE_TO_SECOND = SQL_INTERVAL_MINUTE_TO_SECOND; 
     737   const SQL_C_INTERVAL_MONTH = SQL_INTERVAL_MONTH; 
     738   const SQL_C_INTERVAL_SECOND = SQL_INTERVAL_SECOND; 
     739   const SQL_C_INTERVAL_YEAR = SQL_INTERVAL_YEAR; 
     740   const SQL_C_INTERVAL_YEAR_TO_MONTH = SQL_INTERVAL_YEAR_TO_MONTH; 
     741   const SQL_C_NUMERIC = SQL_NUMERIC; 
     742   const SQL_C_SBIGINT = SQL_BIGINT+SQL_SIGNED_OFFSET; 
     743   const SQL_C_TYPE_DATE = SQL_TYPE_DATE; 
     744   const SQL_C_TYPE_TIME = SQL_TYPE_TIME; 
     745   const SQL_C_TYPE_TIMESTAMP = SQL_TYPE_TIMESTAMP; 
     746   const SQL_C_UBIGINT = SQL_BIGINT+SQL_UNSIGNED_OFFSET; 
     747   const SQL_C_VARBOOKMARK = SQL_C_BINARY; 
     748   const SQL_CA_CONSTRAINT_DEFERRABLE = 0x00000040L; 
     749   const SQL_CA_CONSTRAINT_INITIALLY_DEFERRED = 0x00000010L; 
     750   const SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000020L; 
     751   const SQL_CA_CONSTRAINT_NON_DEFERRABLE = 0x00000080L; 
     752   const SQL_CA_CREATE_ASSERTION = 0x00000001L; 
     753   const SQL_CA1_ABSOLUTE = 0x00000002L; 
     754   const SQL_CA1_BOOKMARK = 0x00000008L; 
     755   const SQL_CA1_BULK_ADD = 0x00010000L; 
     756   const SQL_CA1_BULK_DELETE_BY_BOOKMARK = 0x00040000L; 
     757   const SQL_CA1_BULK_FETCH_BY_BOOKMARK = 0x00080000L; 
     758   const SQL_CA1_BULK_UPDATE_BY_BOOKMARK = 0x00020000L; 
     759   const SQL_CA1_LOCK_EXCLUSIVE = 0x00000080L; 
     760   const SQL_CA1_LOCK_NO_CHANGE = 0x00000040L; 
     761   const SQL_CA1_LOCK_UNLOCK = 0x00000100L; 
     762   const SQL_CA1_NEXT = 0x00000001L; 
     763   const SQL_CA1_POS_DELETE = 0x00000800L; 
     764   const SQL_CA1_POS_POSITION = 0x00000200L; 
     765   const SQL_CA1_POS_REFRESH = 0x00001000L; 
     766   const SQL_CA1_POS_UPDATE = 0x00000400L; 
     767   const SQL_CA1_POSITIONED_DELETE = 0x00004000L; 
     768   const SQL_CA1_POSITIONED_UPDATE = 0x00002000L; 
     769   const SQL_CA1_RELATIVE = 0x00000004L; 
     770   const SQL_CA1_SELECT_FOR_UPDATE = 0x00008000L; 
     771   const SQL_CA2_CRC_APPROXIMATE = 0x00002000L; 
     772   const SQL_CA2_CRC_EXACT = 0x00001000L; 
     773   const SQL_CA2_LOCK_CONCURRENCY = 0x00000002L; 
     774 
     775   const SQL_CA2_MAX_ROWS_CATALOG = 0x00000800L; 
     776   const SQL_CA2_MAX_ROWS_DELETE  = 0x00000200L; 
     777   const SQL_CA2_MAX_ROWS_INSERT  = 0x00000100L; 
     778   const SQL_CA2_MAX_ROWS_SELECT  = 0x00000080L; 
     779   const SQL_CA2_MAX_ROWS_UPDATE  = 0x00000400L; 
     780   const SQL_CA2_MAX_ROWS_AFFECTS_ALL = SQL_CA2_MAX_ROWS_SELECT | SQL_CA2_MAX_ROWS_INSERT | 
     781       SQL_CA2_MAX_ROWS_DELETE | SQL_CA2_MAX_ROWS_UPDATE | SQL_CA2_MAX_ROWS_CATALOG; 
     782 
     783   const SQL_CA2_OPT_ROWVER_CONCURRENCY = 0x00000004L; 
     784   const SQL_CA2_OPT_VALUES_CONCURRENCY = 0x00000008L; 
     785   const SQL_CA2_READ_ONLY_CONCURRENCY = 0x00000001L; 
     786   const SQL_CA2_SENSITIVITY_ADDITIONS = 0x00000010L; 
     787   const SQL_CA2_SENSITIVITY_DELETIONS = 0x00000020L; 
     788   const SQL_CA2_SENSITIVITY_UPDATES = 0x00000040L; 
     789   const SQL_CA2_SIMULATE_NON_UNIQUE = 0x00004000L; 
     790   const SQL_CA2_SIMULATE_TRY_UNIQUE = 0x00008000L; 
     791   const SQL_CA2_SIMULATE_UNIQUE = 0x00010000L; 
     792   const SQL_CATALOG_LOCATION = SQL_QUALIFIER_LOCATION; 
     793   const SQL_CATALOG_NAME_SEPARATOR = SQL_QUALIFIER_NAME_SEPARATOR; 
     794   const SQL_CATALOG_TERM = SQL_QUALIFIER_TERM; 
     795   const SQL_CATALOG_USAGE = SQL_QUALIFIER_USAGE; 
     796   const SQL_CCOL_CREATE_COLLATION = 0x00000001L; 
     797   const SQL_CCS_COLLATE_CLAUSE = 0x00000002L; 
     798   const SQL_CCS_CREATE_CHARACTER_SET = 0x00000001L; 
     799   const SQL_CCS_LIMITED_COLLATION = 0x00000004L; 
     800   const SQL_CDO_COLLATION = 0x00000008L; 
     801   const SQL_CDO_CONSTRAINT = 0x00000004L; 
     802   const SQL_CDO_CONSTRAINT_DEFERRABLE = 0x00000080L; 
     803   const SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED = 0x00000020L; 
     804   const SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000040L; 
     805   const SQL_CDO_CONSTRAINT_NAME_DEFINITION = 0x00000010L; 
     806   const SQL_CDO_CONSTRAINT_NON_DEFERRABLE = 0x00000100L; 
     807   const SQL_CDO_CREATE_DOMAIN = 0x00000001L; 
     808   const SQL_CDO_DEFAULT = 0x00000002L; 
     809   const SQL_CL_END = SQL_QL_END; 
     810   const SQL_CL_START = SQL_QL_START; 
     811   const SQL_COL_PRED_BASIC = SQL_ALL_EXCEPT_LIKE; 
     812   const SQL_COL_PRED_CHAR = SQL_LIKE_ONLY; 
     813   const SQL_COLUMN_DRIVER_START = 1000; 
     814   const SQL_COLUMN_IGNORE = SQL_IGNORE; 
     815   const SQL_COLUMN_NUMBER_UNKNOWN = -2; 
     816   const SQL_CONVERT_GUID = 173; 
     817 
     818   const SQL_CONVERT_WCHAR               = 122; 
     819   const SQL_CONVERT_INTERVAL_DAY_TIME   = 123; 
     820   const SQL_CONVERT_INTERVAL_YEAR_MONTH = 124; 
     821   const SQL_CONVERT_WLONGVARCHAR        = 125; 
     822   const SQL_CONVERT_WVARCHAR            = 126; 
     823 
     824   const SQL_CREATE_ASSERTION     = 127; 
     825   const SQL_CREATE_CHARACTER_SET = 128; 
     826   const SQL_CREATE_COLLATION     = 129; 
     827   const SQL_CREATE_DOMAIN        = 130; 
     828   const SQL_CREATE_SCHEMA        = 131; 
     829   const SQL_CREATE_TABLE         = 132; 
     830   const SQL_CREATE_TRANSLATION   = 133; 
     831   const SQL_CREATE_VIEW          = 134; 
     832 
     833 
     834   const SQL_CP_OFF            = 0UL; 
     835   const SQL_CP_DEFAULT        = SQL_CP_OFF; 
     836   const SQL_CP_ONE_PER_DRIVER = 1UL; 
     837   const SQL_CP_ONE_PER_HENV   = 2UL; 
     838 
     839   const SQL_CP_STRICT_MATCH  = 0UL; 
     840   const SQL_CP_MATCH_DEFAULT = SQL_CP_STRICT_MATCH; 
     841   const SQL_CP_RELAXED_MATCH = 1UL; 
     842 
     843   const SQL_CS_CREATE_SCHEMA         = 0x00000001L; 
     844   const SQL_CS_AUTHORIZATION         = 0x00000002L; 
     845   const SQL_CS_DEFAULT_CHARACTER_SET = 0x00000004L; 
     846 
     847   const SQL_CT_COLUMN_COLLATION = 0x00000800L; 
     848   const SQL_CT_COLUMN_CONSTRAINT = 0x00000200L; 
     849   const SQL_CT_COLUMN_DEFAULT = 0x00000400L; 
     850   const SQL_CT_COMMIT_DELETE = 0x00000004L; 
     851   const SQL_CT_COMMIT_PRESERVE = 0x00000002L; 
     852   const SQL_CT_CONSTRAINT_DEFERRABLE = 0x00000080L; 
     853   const SQL_CT_CONSTRAINT_INITIALLY_DEFERRED = 0x00000020L; 
     854   const SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000040L; 
     855   const SQL_CT_CONSTRAINT_NAME_DEFINITION = 0x00002000L; 
     856   const SQL_CT_CONSTRAINT_NON_DEFERRABLE = 0x00000100L; 
     857   const SQL_CT_CREATE_TABLE = 0x00000001L; 
     858   const SQL_CT_GLOBAL_TEMPORARY = 0x00000008L; 
     859   const SQL_CT_LOCAL_TEMPORARY = 0x00000010L; 
     860   const SQL_CT_TABLE_CONSTRAINT = 0x00001000L; 
     861 
     862   const SQL_CTR_CREATE_TRANSLATION = 0x00000001L; 
     863 
     864   const SQL_CU_DML_STATEMENTS = SQL_QU_DML_STATEMENTS; 
     865   const SQL_CU_INDEX_DEFINITION = SQL_QU_INDEX_DEFINITION; 
     866   const SQL_CU_PRIVILEGE_DEFINITION = SQL_QU_PRIVILEGE_DEFINITION; 
     867   const SQL_CU_PROCEDURE_INVOCATION = SQL_QU_PROCEDURE_INVOCATION; 
     868   const SQL_CU_TABLE_DEFINITION = SQL_QU_TABLE_DEFINITION; 
     869 
     870   const SQL_CVT_INTERVAL_YEAR_MONTH = 0x00080000L; 
     871   const SQL_CVT_INTERVAL_DAY_TIME   = 0x00100000L; 
     872   const SQL_CVT_WCHAR               = 0x00200000L; 
     873   const SQL_CVT_WLONGVARCHAR        = 0x00400000L; 
     874   const SQL_CVT_WVARCHAR            = 0x00800000L; 
     875   const SQL_CVT_GUID                = 0x01000000L; 
     876 
     877   const SQL_DA_DROP_ASSERTION = 0x00000001L; 
     878   const SQL_DATETIME_LITERALS = 119; 
     879 
     880   const SQL_DB_DISCONNECT     = 1UL; 
     881   const SQL_DB_RETURN_TO_POOL = 0UL; 
     882   const SQL_DB_DEFAULT        = SQL_DB_RETURN_TO_POOL; 
     883 
     884   const SQL_DC_DROP_COLLATION = 0x00000001L; 
     885   const SQL_DCS_DROP_CHARACTER_SET = 0x00000001L; 
     886   const SQL_DD_CASCADE = 0x00000004L; 
     887   const SQL_DD_DROP_DOMAIN = 0x00000001L; 
     888   const SQL_DD_RESTRICT = 0x00000002L; 
     889   const SQL_DDL_INDEX = 170; 
     890   const SQL_DELETE_BY_BOOKMARK = 6; 
     891   const SQL_DESC_ARRAY_SIZE = 20; 
     892   const SQL_DESC_ARRAY_STATUS_PTR = 21; 
     893   const SQL_DESC_AUTO_UNIQUE_VALUE = SQL_COLUMN_AUTO_INCREMENT; 
     894   const SQL_DESC_BASE_COLUMN_NAME = 22; 
     895   const SQL_DESC_BASE_TABLE_NAME = 23; 
     896   const SQL_DESC_BIND_OFFSET_PTR = 24; 
     897   const SQL_DESC_BIND_TYPE = 25; 
     898   const SQL_DESC_CASE_SENSITIVE = SQL_COLUMN_CASE_SENSITIVE; 
     899   const SQL_DESC_CATALOG_NAME = SQL_COLUMN_QUALIFIER_NAME; 
     900   const SQL_DESC_CONCISE_TYPE = SQL_COLUMN_TYPE; 
     901   const SQL_DESC_DATETIME_INTERVAL_PRECISION = 26; 
     902   const SQL_DESC_DISPLAY_SIZE = SQL_COLUMN_DISPLAY_SIZE; 
     903   const SQL_DESC_FIXED_PREC_SCALE = SQL_COLUMN_MONEY; 
     904   const SQL_DESC_LABEL = SQL_COLUMN_LABEL; 
     905   const SQL_DESC_LITERAL_PREFIX = 27; 
     906   const SQL_DESC_LITERAL_SUFFIX = 28; 
     907   const SQL_DESC_LOCAL_TYPE_NAME = 29; 
     908   const SQL_DESC_MAXIMUM_SCALE = 30; 
     909   const SQL_DESC_MINIMUM_SCALE = 31; 
     910   const SQL_DESC_NUM_PREC_RADIX = 32; 
     911   const SQL_DESC_PARAMETER_TYPE = 33; 
     912   const SQL_DESC_ROWS_PROCESSED_PTR = 34; 
     913   const SQL_DESC_SCHEMA_NAME = SQL_COLUMN_OWNER_NAME; 
     914   const SQL_DESC_SEARCHABLE = SQL_COLUMN_SEARCHABLE; 
     915   const SQL_DESC_TABLE_NAME = SQL_COLUMN_TABLE_NAME; 
     916   const SQL_DESC_TYPE_NAME = SQL_COLUMN_TYPE_NAME; 
     917   const SQL_DESC_UNSIGNED = SQL_COLUMN_UNSIGNED; 
     918   const SQL_DESC_UPDATABLE = SQL_COLUMN_UPDATABLE; 
     919   const SQL_DI_CREATE_INDEX = 0x00000001L; 
     920   const SQL_DI_DROP_INDEX = 0x00000002L; 
     921 
     922   const SQL_DIAG_COLUMN_NUMBER = -1247; 
     923   const SQL_DIAG_ROW_NUMBER = -1248; 
     924   const SQL_DIAG_CURSOR_ROW_COUNT = -1249; 
     925 
     926   const SQL_DL_SQL92_DATE = 0x00000001L; 
     927   const SQL_DL_SQL92_INTERVAL_DAY = 0x00000020L; 
     928   const SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR = 0x00000400L; 
     929   const SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE = 0x00000800L; 
     930   const SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND = 0x00001000L; 
     931   const SQL_DL_SQL92_INTERVAL_HOUR = 0x00000040L; 
     932   const SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE = 0x00002000L; 
     933   const SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND = 0x00004000L; 
     934   const SQL_DL_SQL92_INTERVAL_MINUTE = 0x00000080L; 
     935   const SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND = 0x00008000L; 
     936   const SQL_DL_SQL92_INTERVAL_MONTH = 0x00000010L; 
     937   const SQL_DL_SQL92_INTERVAL_SECOND = 0x00000100L; 
     938   const SQL_DL_SQL92_INTERVAL_YEAR = 0x00000008L; 
     939   const SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH = 0x00000200L; 
     940   const SQL_DL_SQL92_TIME = 0x00000002L; 
     941   const SQL_DL_SQL92_TIMESTAMP = 0x00000004L; 
     942   const SQL_DM_VER = 171; 
     943   const SQL_DRIVER_HDESC = 135; 
     944   const SQL_DROP_ASSERTION = 136; 
     945   const SQL_DROP_CHARACTER_SET = 137; 
     946   const SQL_DROP_COLLATION = 138; 
     947   const SQL_DROP_DOMAIN = 139; 
     948   const SQL_DROP_SCHEMA = 140; 
     949   const SQL_DROP_TABLE = 141; 
     950   const SQL_DROP_TRANSLATION = 142; 
     951   const SQL_DROP_VIEW = 143; 
     952   const SQL_DS_CASCADE = 0x00000004L; 
     953   const SQL_DS_DROP_SCHEMA = 0x00000001L; 
     954   const SQL_DS_RESTRICT = 0x00000002L; 
     955   const SQL_DT_CASCADE = 0x00000004L; 
     956   const SQL_DT_DROP_TABLE = 0x00000001L; 
     957   const SQL_DT_RESTRICT = 0x00000002L; 
     958   const SQL_DTC_DONE = 0L; 
     959   const SQL_DTR_DROP_TRANSLATION = 0x00000001L; 
     960   const SQL_DV_CASCADE = 0x00000004L; 
     961   const SQL_DV_DROP_VIEW = 0x00000001L; 
     962   const SQL_DV_RESTRICT = 0x00000002L; 
     963   const SQL_DYNAMIC_CURSOR_ATTRIBUTES1 = 144; 
     964   const SQL_DYNAMIC_CURSOR_ATTRIBUTES2 = 145; 
     965   const SQL_EXT_API_LAST = SQL_API_SQLBINDPARAMETER; 
     966   const SQL_EXT_API_START = 40; 
     967   const SQL_FETCH_BY_BOOKMARK = 7; 
     968   const SQL_FETCH_FIRST_SYSTEM = 32; 
     969   const SQL_FETCH_FIRST_USER = 31; 
     970   const SQL_FN_CVT_CAST = 0x00000002L; 
     971   const SQL_FN_STR_BIT_LENGTH = 0x00080000L; 
     972   const SQL_FN_STR_CHAR_LENGTH = 0x00100000L; 
     973   const SQL_FN_STR_CHARACTER_LENGTH = 0x00200000L; 
     974   const SQL_FN_STR_OCTET_LENGTH = 0x00400000L; 
     975   const SQL_FN_STR_POSITION = 0x00800000L; 
     976   const SQL_FN_TD_CURRENT_DATE = 0x00020000L; 
     977   const SQL_FN_TD_CURRENT_TIME = 0x00040000L; 
     978   const SQL_FN_TD_CURRENT_TIMESTAMP = 0x00080000L; 
     979   const SQL_FN_TD_EXTRACT = 0x00100000L; 
     980   const SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 = 146; 
     981   const SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 = 147; 
     982   /* #define SQL_FUNC_EXISTS(exists, api) 
     983      ((*(((UWORD*) (exists)) + ((api) >> 4)) & (1 << ((api) & 15)) ) ? 
     984      SQL_TRUE : SQL_FALSE ) 
     985   */ 
     986   const SQL_GB_COLLATE = 0x0004; 
     987   const SQL_HANDLE_SENV = 5; 
     988 
     989   const SQL_IK_NONE = 0; 
     990   const SQL_IK_ASC = 1; 
     991   const SQL_IK_DESC = 2; 
     992   const SQL_IK_ALL = SQL_IK_ASC | SQL_IK_DESC; 
     993 
     994   const SQL_INDEX_KEYWORDS = 148; 
     995   const SQL_INFO_DRIVER_START = 1000; 
     996   const SQL_INFO_LAST = SQL_QUALIFIER_LOCATION; 
     997   const SQL_INFO_SCHEMA_VIEWS = 149; 
     998   const SQL_INITIALLY_DEFERRED = 5; 
     999   const SQL_INITIALLY_IMMEDIATE = 6; 
     1000   const SQL_INSERT_STATEMENT = 172; 
     1001   const SQL_INTERVAL = 10; 
     1002   const SQL_IS_INSERT_LITERALS = 0x00000001L; 
     1003   const SQL_IS_INSERT_SEARCHED = 0x00000002L; 
     1004   const SQL_IS_INTEGER = -6; 
     1005   const SQL_IS_POINTER = -4; 
     1006   const SQL_IS_SELECT_INTO = 0x00000004L; 
     1007   const SQL_IS_SMALLINT = -8; 
     1008   const SQL_IS_UINTEGER = -5; 
     1009   const SQL_IS_USMALLINT = -7; 
     1010   const SQL_ISV_ASSERTIONS = 0x00000001L; 
     1011   const SQL_ISV_CHARACTER_SETS = 0x00000002L; 
     1012   const SQL_ISV_CHECK_CONSTRAINTS = 0x00000004L; 
     1013   const SQL_ISV_COLLATIONS = 0x00000008L; 
     1014   const SQL_ISV_COLUMN_DOMAIN_USAGE = 0x00000010L; 
     1015   const SQL_ISV_COLUMN_PRIVILEGES = 0x00000020L; 
     1016   const SQL_ISV_COLUMNS = 0x00000040L; 
     1017   const SQL_ISV_CONSTRAINT_COLUMN_USAGE = 0x00000080L; 
     1018   const SQL_ISV_CONSTRAINT_TABLE_USAGE = 0x00000100L; 
     1019   const SQL_ISV_DOMAIN_CONSTRAINTS = 0x00000200L; 
     1020   const SQL_ISV_DOMAINS = 0x00000400L; 
     1021   const SQL_ISV_KEY_COLUMN_USAGE = 0x00000800L; 
     1022   const SQL_ISV_REFERENTIAL_CONSTRAINTS = 0x00001000L; 
     1023   const SQL_ISV_SCHEMATA = 0x00002000L; 
     1024   const SQL_ISV_SQL_LANGUAGES = 0x00004000L; 
     1025   const SQL_ISV_TABLE_CONSTRAINTS = 0x00008000L; 
     1026   const SQL_ISV_TABLE_PRIVILEGES = 0x00010000L; 
     1027   const SQL_ISV_TABLES = 0x00020000L; 
     1028   const SQL_ISV_TRANSLATIONS = 0x00040000L; 
     1029   const SQL_ISV_USAGE_PRIVILEGES = 0x00080000L; 
     1030   const SQL_ISV_VIEW_COLUMN_USAGE = 0x00100000L; 
     1031   const SQL_ISV_VIEW_TABLE_USAGE = 0x00200000L; 
     1032   const SQL_ISV_VIEWS = 0x00400000L; 
     1033   const SQL_KEYSET_CURSOR_ATTRIBUTES1 = 150; 
     1034   const SQL_KEYSET_CURSOR_ATTRIBUTES2 = 151; 
     1035   const SQL_MAX_ASYNC_CONCURRENT_STATEMENTS = 10022; 
     1036   const SQL_NO_COLUMN_NUMBER = -1; 
     1037   const SQL_NO_ROW_NUMBER = -1; 
     1038   const SQL_NOT_DEFERRABLE = 7; 
     1039   const SQL_NUM_EXTENSIONS = SQL_EXT_API_LAST-SQL_EXT_API_START+1; 
     1040   const SQL_NUM_FUNCTIONS = 23; 
     1041   const SQL_ODBC_INTERFACE_CONFORMANCE = 152; 
     1042 
     1043   enum : ULONG { 
     1044       SQL_OIC_CORE = 1, 
     1045       SQL_OIC_LEVEL1, 
     1046       SQL_OIC_LEVEL2 
     1047   
     1048   enum : ULONG { 
     1049       SQL_OV_ODBC2 = 2, 
     1050       SQL_OV_ODBC3 = 3 
     1051   
     1052 
     1053   const ULONG 
     1054       SQL_PARAM_BIND_BY_COLUMN = 0, 
     1055       SQL_PARAM_BIND_TYPE_DEFAULT = SQL_PARAM_BIND_BY_COLUMN; 
     1056 
     1057   const SQL_PARAM_ARRAY_ROW_COUNTS = 153; 
     1058   const SQL_PARAM_ARRAY_SELECTS = 154; 
     1059   const SQL_PARAM_DIAG_UNAVAILABLE = 1; 
     1060   const SQL_PARAM_ERROR = 5; 
     1061   const SQL_PARAM_IGNORE = 1; 
     1062   const SQL_PARAM_PROCEED = 0; 
     1063   const SQL_PARAM_SUCCESS = 0; 
     1064   const SQL_PARAM_SUCCESS_WITH_INFO = 6; 
     1065   const SQL_PARAM_UNUSED = 7; 
     1066 
     1067   const SQL_PARC_BATCH = 1; 
     1068   const SQL_PARC_NO_BATCH = 2; 
     1069   const SQL_PAS_BATCH = 1; 
     1070   const SQL_PAS_NO_BATCH = 2; 
     1071   const SQL_PAS_NO_SELECT = 3; 
     1072 
     1073   const SQL_ROW_IGNORE = 1; 
     1074   const SQL_ROW_NUMBER_UNKNOWN = -2; 
     1075   const SQL_ROW_PROCEED = 0; 
     1076   const SQL_ROW_SUCCESS_WITH_INFO = 6; 
     1077 
     1078   const SQL_SC_FIPS127_2_TRANSITIONAL = 0x00000002L; 
     1079   const SQL_SC_SQL92_ENTRY = 0x00000001L; 
     1080   const SQL_SC_SQL92_FULL = 0x00000008L; 
     1081   const SQL_SC_SQL92_INTERMEDIATE = 0x00000004L; 
     1082 
     1083   const SQL_SCC_ISO92_CLI = 0x00000002L; 
     1084   const SQL_SCC_XOPEN_CLI_VERSION1 = 0x00000001L; 
     1085 
     1086   const SQL_SCHEMA_TERM = SQL_OWNER_TERM; 
     1087   const SQL_SCHEMA_USAGE = SQL_OWNER_USAGE; 
     1088   const SQL_SDF_CURRENT_DATE = 0x00000001L; 
     1089   const SQL_SDF_CURRENT_TIME = 0x00000002L; 
     1090   const SQL_SDF_CURRENT_TIMESTAMP = 0x00000004L; 
     1091   const SQL_SFKD_CASCADE = 0x00000001L; 
     1092   const SQL_SFKD_NO_ACTION = 0x00000002L; 
     1093   const SQL_SFKD_SET_DEFAULT = 0x00000004L; 
     1094   const SQL_SFKD_SET_NULL = 0x00000008L; 
     1095   const SQL_SFKU_CASCADE = 0x00000001L; 
     1096   const SQL_SFKU_NO_ACTION = 0x00000002L; 
     1097   const SQL_SFKU_SET_DEFAULT = 0x00000004L; 
     1098   const SQL_SFKU_SET_NULL = 0x00000008L; 
     1099   const SQL_SG_DELETE_TABLE = 0x00000020L; 
     1100   const SQL_SG_INSERT_COLUMN = 0x00000080L; 
     1101   const SQL_SG_INSERT_TABLE = 0x00000040L; 
     1102   const SQL_SG_REFERENCES_COLUMN = 0x00000200L; 
     1103   const SQL_SG_REFERENCES_TABLE = 0x00000100L; 
     1104   const SQL_SG_SELECT_TABLE = 0x00000400L; 
     1105   const SQL_SG_UPDATE_COLUMN = 0x00001000L; 
     1106   const SQL_SG_UPDATE_TABLE = 0x00000800L; 
     1107   const SQL_SG_USAGE_ON_CHARACTER_SET = 0x00000002L; 
     1108   const SQL_SG_USAGE_ON_COLLATION = 0x00000004L; 
     1109   const SQL_SG_USAGE_ON_DOMAIN = 0x00000001L; 
     1110   const SQL_SG_USAGE_ON_TRANSLATION = 0x00000008L; 
     1111   const SQL_SG_WITH_GRANT_OPTION = 0x00000010L; 
     1112   const SQL_SNVF_BIT_LENGTH = 0x00000001L; 
     1113   const SQL_SNVF_CHAR_LENGTH = 0x00000002L; 
     1114   const SQL_SNVF_CHARACTER_LENGTH = 0x00000004L; 
     1115   const SQL_SNVF_EXTRACT = 0x00000008L; 
     1116   const SQL_SNVF_OCTET_LENGTH = 0x00000010L; 
     1117   const SQL_SNVF_POSITION = 0x00000020L; 
     1118   const SQL_SP_BETWEEN = 0x00000800L; 
     1119   const SQL_SP_COMPARISON = 0x00001000L; 
     1120   const SQL_SP_EXISTS = 0x00000001L; 
     1121   const SQL_SP_IN = 0x00000400L; 
     1122   const SQL_SP_ISNOTNULL = 0x00000002L; 
     1123   const SQL_SP_ISNULL = 0x00000004L; 
     1124   const SQL_SP_LIKE = 0x00000200L; 
     1125   const SQL_SP_MATCH_FULL = 0x00000008L; 
     1126   const SQL_SP_MATCH_PARTIAL = 0x00000010L; 
     1127   const SQL_SP_MATCH_UNIQUE_FULL = 0x00000020L; 
     1128   const SQL_SP_MATCH_UNIQUE_PARTIAL = 0x00000040L; 
     1129   const SQL_SP_OVERLAPS = 0x00000080L; 
     1130   const SQL_SP_QUANTIFIED_COMPARISON = 0x00002000L; 
     1131   const SQL_SP_UNIQUE = 0x00000100L; 
     1132   const SQL_SQL_CONFORMANCE = 118; 
     1133   const SQL_SQL92_DATETIME_FUNCTIONS = 155; 
     1134   const SQL_SQL92_FOREIGN_KEY_DELETE_RULE = 156; 
     1135   const SQL_SQL92_FOREIGN_KEY_UPDATE_RULE = 157; 
     1136   const SQL_SQL92_GRANT = 158; 
     1137   const SQL_SQL92_NUMERIC_VALUE_FUNCTIONS = 159; 
     1138   const SQL_SQL92_PREDICATES = 160; 
     1139   const SQL_SQL92_RELATIONAL_JOIN_OPERATORS = 161; 
     1140   const SQL_SQL92_REVOKE = 162; 
     1141   const SQL_SQL92_ROW_VALUE_CONSTRUCTOR = 163; 
     1142   const SQL_SQL92_STRING_FUNCTIONS = 164; 
     1143   const SQL_SQL92_VALUE_EXPRESSIONS = 165; 
     1144   const SQL_SR_CASCADE = 0x00000020L; 
     1145   const SQL_SR_DELETE_TABLE = 0x00000080L; 
     1146   const SQL_SR_GRANT_OPTION_FOR = 0x00000010L; 
     1147   const SQL_SR_INSERT_COLUMN = 0x00000200L; 
     1148   const SQL_SR_INSERT_TABLE = 0x00000100L; 
     1149   const SQL_SR_REFERENCES_COLUMN = 0x00000800L; 
     1150   const SQL_SR_REFERENCES_TABLE = 0x00000400L; 
     1151   const SQL_SR_RESTRICT = 0x00000040L; 
     1152   const SQL_SR_SELECT_TABLE = 0x00001000L; 
     1153   const SQL_SR_UPDATE_COLUMN = 0x00004000L; 
     1154   const SQL_SR_UPDATE_TABLE = 0x00002000L; 
     1155   const SQL_SR_USAGE_ON_CHARACTER_SET = 0x00000002L; 
     1156   const SQL_SR_USAGE_ON_COLLATION = 0x00000004L; 
     1157   const SQL_SR_USAGE_ON_DOMAIN = 0x00000001L; 
     1158   const SQL_SR_USAGE_ON_TRANSLATION = 0x00000008L; 
     1159   const SQL_SRJO_CORRESPONDING_CLAUSE = 0x00000001L; 
     1160   const SQL_SRJO_CROSS_JOIN = 0x00000002L; 
     1161   const SQL_SRJO_EXCEPT_JOIN = 0x00000004L; 
     1162   const SQL_SRJO_FULL_OUTER_JOIN = 0x00000008L; 
     1163   const SQL_SRJO_INNER_JOIN = 0x00000010L; 
     1164   const SQL_SRJO_INTERSECT_JOIN = 0x00000020L; 
     1165   const SQL_SRJO_LEFT_OUTER_JOIN = 0x00000040L; 
     1166   const SQL_SRJO_NATURAL_JOIN = 0x00000080L; 
     1167   const SQL_SRJO_RIGHT_OUTER_JOIN = 0x00000100L; 
     1168   const SQL_SRJO_UNION_JOIN = 0x00000200L; 
     1169   const SQL_SRVC_DEFAULT = 0x00000004L; 
     1170   const SQL_SRVC_NULL = 0x00000002L; 
     1171   const SQL_SRVC_ROW_SUBQUERY = 0x00000008L; 
     1172   const SQL_SRVC_VALUE_EXPRESSION = 0x00000001L; 
     1173   const SQL_SSF_CONVERT = 0x00000001L; 
     1174   const SQL_SSF_LOWER = 0x00000002L; 
     1175   const SQL_SSF_SUBSTRING = 0x00000008L; 
     1176   const SQL_SSF_TRANSLATE = 0x00000010L; 
     1177   const SQL_SSF_TRIM_BOTH = 0x00000020L; 
     1178   const SQL_SSF_TRIM_LEADING = 0x00000040L; 
     1179   const SQL_SSF_TRIM_TRAILING = 0x00000080L; 
     1180   const SQL_SSF_UPPER = 0x00000004L; 
     1181   const SQL_STANDARD_CLI_CONFORMANCE = 166; 
     1182   const SQL_STATIC_CURSOR_ATTRIBUTES1 = 167; 
     1183   const SQL_STATIC_CURSOR_ATTRIBUTES2 = 168; 
     1184   const SQL_SU_DML_STATEMENTS = SQL_OU_DML_STATEMENTS; 
     1185   const SQL_SU_INDEX_DEFINITION = SQL_OU_INDEX_DEFINITION; 
     1186   const SQL_SU_PRIVILEGE_DEFINITION = SQL_OU_PRIVILEGE_DEFINITION; 
     1187   const SQL_SU_PROCEDURE_INVOCATION = SQL_OU_PROCEDURE_INVOCATION; 
     1188   const SQL_SU_TABLE_DEFINITION = SQL_OU_TABLE_DEFINITION; 
     1189   const SQL_SVE_CASE = 0x00000001L; 
     1190   const SQL_SVE_CAST = 0x00000002L; 
     1191   const SQL_SVE_COALESCE = 0x00000004L; 
     1192   const SQL_SVE_NULLIF = 0x00000008L; 
     1193   const SQL_UB_FIXED = SQL_UB_ON; 
     1194   const SQL_UB_VARIABLE = 2UL; 
     1195   const SQL_UNION_STATEMENT = SQL_UNION; 
     1196   const SQL_UPDATE_BY_BOOKMARK = 5; 
     1197   const SQL_US_UNION = SQL_U_UNION; 
     1198   const SQL_US_UNION_ALL = SQL_U_UNION_ALL; 
    11991199}//[Yes] #endif /* ODBCVER >= 0x300 */ 
    12001200static if (ODBCVER >= 0x0350) { 
    1201 const SQL_DESC_ROWVER = 35; 
    1202 const SQL_GUID = -11; 
    1203 const SQL_C_GUID = SQL_GUID; 
    1204 //#ifdef ODBC_STD 
    1205 //#define SQLAllocHandle SQLAllocHandleStd 
    1206 //#define SQLAllocEnv(p) SQLAllocHandleStd(SQL_HANDLE_ENV,SQL_NULL_HANDLE,p) 
    1207 //#define SQL_YEAR SQL_CODE_YEAR 
    1208 //#define SQL_MONTH SQL_CODE_MONTH 
    1209 //#define SQL_DAY SQL_CODE_DAY 
    1210 //#define SQL_HOUR SQL_CODE_HOUR 
    1211 //#define SQL_MINUTE SQL_CODE_MINUTE 
    1212 //#define SQL_SECOND SQL_CODE_SECOND 
    1213 //#define SQL_YEAR_TO_MONTH SQL_CODE_YEAR_TO_MONTH 
    1214 //#define SQL_DAY_TO_HOUR SQL_CODE_DAY_TO_HOUR 
    1215 //#define SQL_DAY_TO_MINUTE SQL_CODE_DAY_TO_MINUTE 
    1216 //#define SQL_DAY_TO_SECOND SQL_CODE_DAY_TO_SECOND 
    1217 //#define SQL_HOUR_TO_MINUTE SQL_CODE_HOUR_TO_MINUTE 
    1218 //#define SQL_HOUR_TO_SECOND SQL_CODE_HOUR_TO_SECOND 
    1219 //#define SQL_MINUTE_TO_SECOND SQL_CODE_MINUTE_TO_SECOND 
    1220 //#endif /* ODBC_STD */ 
     1201   const SQL_DESC_ROWVER = 35; 
     1202   const SQL_GUID = -11; 
     1203   const SQL_C_GUID = SQL_GUID; 
     1204   //#ifdef ODBC_STD 
     1205   //#define SQLAllocHandle SQLAllocHandleStd 
     1206   //#define SQLAllocEnv(p) SQLAllocHandleStd(SQL_HANDLE_ENV, SQL_NULL_HANDLE, p) 
     1207   //#define SQL_YEAR SQL_CODE_YEAR 
     1208   //#define SQL_MONTH SQL_CODE_MONTH 
     1209   //#define SQL_DAY SQL_CODE_DAY 
     1210   //#define SQL_HOUR SQL_CODE_HOUR 
     1211   //#define SQL_MINUTE SQL_CODE_MINUTE 
     1212   //#define SQL_SECOND SQL_CODE_SECOND 
     1213   //#define SQL_YEAR_TO_MONTH SQL_CODE_YEAR_TO_MONTH 
     1214   //#define SQL_DAY_TO_HOUR SQL_CODE_DAY_TO_HOUR 
     1215   //#define SQL_DAY_TO_MINUTE SQL_CODE_DAY_TO_MINUTE 
     1216   //#define SQL_DAY_TO_SECOND SQL_CODE_DAY_TO_SECOND 
     1217   //#define SQL_HOUR_TO_MINUTE SQL_CODE_HOUR_TO_MINUTE 
     1218   //#define SQL_HOUR_TO_SECOND SQL_CODE_HOUR_TO_SECOND 
     1219   //#define SQL_MINUTE_TO_SECOND SQL_CODE_MINUTE_TO_SECOND 
     1220   //#endif /* ODBC_STD */ 
    12211221}//#endif /* ODBCVER >= 0x0350 */ 
    12221222 
     
    12311231 
    12321232const char [] SQL_ODBC_KEYWORDS = 
    1233     "ABSOLUTE,ACTION,ADA,ADD,ALL,ALLOCATE,ALTER,AND,ANY,ARE,AS,
    1234     ~ "ASC,ASSERTION,AT,AUTHORIZATION,AVG,
    1235     ~ "BEGIN,BETWEEN,BIT,BIT_LENGTH,BOTH,BY,CASCADE,CASCADED,CASE,CAST,CATALOG,
    1236     ~ "CHAR,CHAR_LENGTH,CHARACTER,CHARACTER_LENGTH,CHECK,CLOSE,COALESCE,
    1237     ~ "COLLATE,COLLATION,COLUMN,COMMIT,CONNECT,CONNECTION,CONSTRAINT,
    1238     ~ "CONSTRAINTS,CONTINUE,CONVERT,CORRESPONDING,COUNT,CREATE,CROSS,CURRENT,
    1239     ~ "CURRENT_DATE,CURRENT_TIME,CURRENT_TIMESTAMP,CURRENT_USER,CURSOR,
    1240     ~ "DATE,DAY,DEALLOCATE,DEC,DECIMAL,DECLARE,DEFAULT,DEFERRABLE,
    1241     ~ "DEFERRED,DELETE,DESC,DESCRIBE,DESCRIPTOR,DIAGNOSTICS,DISCONNECT,
    1242     ~ "DISTINCT,DOMAIN,DOUBLE,DROP,
    1243     ~ "ELSE,END,END-EXEC,ESCAPE,EXCEPT,EXCEPTION,EXEC,EXECUTE,
    1244     ~ "EXISTS,EXTERNAL,EXTRACT,
    1245     ~ "FALSE,FETCH,FIRST,FLOAT,FOR,FOREIGN,FORTRAN,FOUND,FROM,FULL,
    1246     ~ "GET,GLOBAL,GO,GOTO,GRANT,GROUP,HAVING,HOUR,
    1247     ~ "IDENTITY,IMMEDIATE,IN,INCLUDE,INDEX,INDICATOR,INITIALLY,INNER,
    1248     ~ "INPUT,INSENSITIVE,INSERT,INT,INTEGER,INTERSECT,INTERVAL,INTO,IS,ISOLATION,
    1249     ~ "JOIN,KEY,LANGUAGE,LAST,LEADING,LEFT,LEVEL,LIKE,LOCAL,LOWER,
    1250     ~ "MATCH,MAX,MIN,MINUTE,MODULE,MONTH,
    1251     ~ "NAMES,NATIONAL,NATURAL,NCHAR,NEXT,NO,NONE,NOT,NULL,NULLIF,NUMERIC,
    1252     ~ "OCTET_LENGTH,OF,ON,ONLY,OPEN,OPTION,OR,ORDER,OUTER,OUTPUT,OVERLAPS,
    1253     ~ "PAD,PARTIAL,PASCAL,PLI,POSITION,PRECISION,PREPARE,PRESERVE,
    1254     ~ "PRIMARY,PRIOR,PRIVILEGES,PROCEDURE,PUBLIC,
    1255     ~ "READ,REAL,REFERENCES,RELATIVE,RESTRICT,REVOKE,RIGHT,ROLLBACK,ROWS" 
    1256     ~ "SCHEMA,SCROLL,SECOND,SECTION,SELECT,SESSION,SESSION_USER,SET,SIZE,
    1257     ~ "SMALLINT,SOME,SPACE,SQL,SQLCA,SQLCODE,SQLERROR,SQLSTATE,SQLWARNING,
    1258     ~ "SUBSTRING,SUM,SYSTEM_USER,
    1259     ~ "TABLE,TEMPORARY,THEN,TIME,TIMESTAMP,TIMEZONE_HOUR,TIMEZONE_MINUTE,
    1260     ~ "TO,TRAILING,TRANSACTION,TRANSLATE,TRANSLATION,TRIM,TRUE,
    1261     ~ "UNION,UNIQUE,UNKNOWN,UPDATE,UPPER,USAGE,USER,USING,
    1262     ~ "VALUE,VALUES,VARCHAR,VARYING,VIEW,WHEN,WHENEVER,WHERE,WITH,WORK,WRITE,
    1263     ~ "YEAR,ZONE"; 
     1233    "ABSOLUTE, ACTION, ADA, ADD, ALL, ALLOCATE, ALTER, AND, ANY, ARE, AS,
     1234    ~ "ASC, ASSERTION, AT, AUTHORIZATION, AVG,
     1235    ~ "BEGIN, BETWEEN, BIT, BIT_LENGTH, BOTH, BY, CASCADE, CASCADED, CASE, CAST, CATALOG,
     1236    ~ "CHAR, CHAR_LENGTH, CHARACTER, CHARACTER_LENGTH, CHECK, CLOSE, COALESCE,
     1237    ~ "COLLATE, COLLATION, COLUMN, COMMIT, CONNECT, CONNECTION, CONSTRAINT,
     1238    ~ "CONSTRAINTS, CONTINUE, CONVERT, CORRESPONDING, COUNT, CREATE, CROSS, CURRENT,
     1239    ~ "CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_USER, CURSOR,
     1240    ~ "DATE, DAY, DEALLOCATE, DEC, DECIMAL, DECLARE, DEFAULT, DEFERRABLE,
     1241    ~ "DEFERRED, DELETE, DESC, DESCRIBE, DESCRIPTOR, DIAGNOSTICS, DISCONNECT,
     1242    ~ "DISTINCT, DOMAIN, DOUBLE, DROP,
     1243    ~ "ELSE, END, END-EXEC, ESCAPE, EXCEPT, EXCEPTION, EXEC, EXECUTE,
     1244    ~ "EXISTS, EXTERNAL, EXTRACT,
     1245    ~ "FALSE, FETCH, FIRST, FLOAT, FOR, FOREIGN, FORTRAN, FOUND, FROM, FULL,
     1246    ~ "GET, GLOBAL, GO, GOTO, GRANT, GROUP, HAVING, HOUR,
     1247    ~ "IDENTITY, IMMEDIATE, IN, INCLUDE, INDEX, INDICATOR, INITIALLY, INNER,
     1248    ~ "INPUT, INSENSITIVE, INSERT, INT, INTEGER, INTERSECT, INTERVAL, INTO, IS, ISOLATION,
     1249    ~ "JOIN, KEY, LANGUAGE, LAST, LEADING, LEFT, LEVEL, LIKE, LOCAL, LOWER,
     1250    ~ "MATCH, MAX, MIN, MINUTE, MODULE, MONTH,
     1251    ~ "NAMES, NATIONAL, NATURAL, NCHAR, NEXT, NO, NONE, NOT, NULL, NULLIF, NUMERIC,
     1252    ~ "OCTET_LENGTH, OF, ON, ONLY, OPEN, OPTION, OR, ORDER, OUTER, OUTPUT, OVERLAPS,
     1253    ~ "PAD, PARTIAL, PASCAL, PLI, POSITION, PRECISION, PREPARE, PRESERVE,
     1254    ~ "PRIMARY, PRIOR, PRIVILEGES, PROCEDURE, PUBLIC,
     1255    ~ "READ, REAL, REFERENCES, RELATIVE, RESTRICT, REVOKE, RIGHT, ROLLBACK, ROWS" 
     1256    ~ "SCHEMA, SCROLL, SECOND, SECTION, SELECT, SESSION, SESSION_USER, SET, SIZE,
     1257    ~ "SMALLINT, SOME, SPACE, SQL, SQLCA, SQLCODE, SQLERROR, SQLSTATE, SQLWARNING,
     1258    ~ "SUBSTRING, SUM, SYSTEM_USER,
     1259    ~ "TABLE, TEMPORARY, THEN, TIME, TIMESTAMP, TIMEZONE_HOUR, TIMEZONE_MINUTE,
     1260    ~ "TO, TRAILING, TRANSACTION, TRANSLATE, TRANSLATION, TRIM, TRUE,
     1261    ~ "UNION, UNIQUE, UNKNOWN, UPDATE, UPPER, USAGE, USER, USING,
     1262    ~ "VALUE, VALUES, VARCHAR, VARYING, VIEW, WHEN, WHENEVER, WHERE, WITH, WORK, WRITE,
     1263    ~ "YEAR, ZONE"; 
    12641264extern (Windows) { 
    1265 SQLRETURN SQLDriverConnect(SQLHDBC,SQLHWND,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLSMALLINT*,SQLUSMALLINT); 
    1266 SQLRETURN SQLBrowseConnect(SQLHDBC,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLSMALLINT*); 
    1267 SQLRETURN SQLColumnPrivileges(SQLHSTMT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT); 
    1268 SQLRETURN SQLColAttributes(SQLHSTMT,SQLUSMALLINT, SQLUSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*, SQLLEN*); 
    1269 SQLRETURN SQLDescribeParam(SQLHSTMT,SQLUSMALLINT,SQLSMALLINT*,SQLULEN*,SQLSMALLINT*,SQLSMALLINT*); 
    1270 SQLRETURN SQLExtendedFetch(SQLHSTMT,SQLUSMALLINT,SQLINTEGER,SQLUINTEGER*,SQLUSMALLINT*); 
    1271 SQLRETURN SQLForeignKeys(SQLHSTMT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT); 
    1272 SQLRETURN SQLMoreResults(SQLHSTMT); 
    1273 SQLRETURN SQLNativeSql(SQLHDBC,SQLCHAR*,SQLINTEGER,SQLCHAR*,SQLINTEGER,SQLINTEGER*); 
    1274 SQLRETURN SQLNumParams(SQLHSTMT,SQLSMALLINT*); 
    1275 SQLRETURN SQLParamOptions(SQLHSTMT,SQLUINTEGER,SQLUINTEGER*); 
    1276 SQLRETURN SQLPrimaryKeys(SQLHSTMT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT); 
    1277 SQLRETURN SQLProcedureColumns(SQLHSTMT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT); 
    1278 SQLRETURN SQLProcedures(SQLHSTMT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT); 
    1279 SQLRETURN SQLSetPos(SQLHSTMT,SQLUSMALLINT,SQLUSMALLINT,SQLUSMALLINT); 
    1280 SQLRETURN SQLTablePrivileges(SQLHSTMT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT); 
    1281 SQLRETURN SQLDrivers(SQLHENV,SQLUSMALLINT,SQLCHAR*,SQLSMALLINT,SQLSMALLINT*,SQLCHAR*,SQLSMALLINT,SQLSMALLINT*); 
    1282 SQLRETURN SQLBindParameter(SQLHSTMT,SQLUSMALLINT,SQLSMALLINT,SQLSMALLINT,SQLSMALLINT,SQLULEN,SQLSMALLINT,SQLPOINTER,SQLLEN,SQLLEN*); 
    1283 SQLRETURN SQLSetScrollOptions(SQLHSTMT,SQLUSMALLINT,SQLLEN,SQLUSMALLINT);/* deprecated */ 
    1284 DWORD ODBCGetTryWaitValue(); 
    1285 BOOL ODBCSetTryWaitValue(DWORD); 
    1286 RETCODE    TraceOpenLogFile(LPWSTR,LPWSTR,DWORD); 
    1287 RETCODE    TraceCloseLogFile(); 
    1288 VOID TraceReturn(RETCODE,RETCODE); 
    1289 DWORD TraceVersion(); 
    1290 //static if (ODBCVER >= 0x0300) { 
    1291 SQLRETURN SQLBulkOperations(SQLHSTMT,SQLSMALLINT); 
    1292 SQLRETURN SQLAllocHandleStd( SQLSMALLINT,SQLHANDLE,SQLHANDLE*); 
    1293 //} 
     1265   SQLRETURN SQLDriverConnect(SQLHDBC, SQLHWND, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLUSMALLINT); 
     1266   SQLRETURN SQLBrowseConnect(SQLHDBC, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); 
     1267   SQLRETURN SQLColumnPrivileges(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); 
     1268   SQLRETURN SQLColAttributes(SQLHSTMT, SQLUSMALLINT, SQLUSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*, SQLLEN*); 
     1269   SQLRETURN SQLDescribeParam(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT*, SQLULEN*, SQLSMALLINT*, SQLSMALLINT*); 
     1270   SQLRETURN SQLExtendedFetch(SQLHSTMT, SQLUSMALLINT, SQLINTEGER, SQLUINTEGER*, SQLUSMALLINT*); 
     1271   SQLRETURN SQLForeignKeys(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); 
     1272   SQLRETURN SQLMoreResults(SQLHSTMT); 
     1273   SQLRETURN SQLNativeSql(SQLHDBC, SQLCHAR*, SQLINTEGER, SQLCHAR*, SQLINTEGER, SQLINTEGER*); 
     1274   SQLRETURN SQLNumParams(SQLHSTMT, SQLSMALLINT*); 
     1275   SQLRETURN SQLParamOptions(SQLHSTMT, SQLUINTEGER, SQLUINTEGER*); 
     1276   SQLRETURN SQLPrimaryKeys(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); 
     1277   SQLRETURN SQLProcedureColumns(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); 
     1278   SQLRETURN SQLProcedures(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); 
     1279   SQLRETURN SQLSetPos(SQLHSTMT, SQLUSMALLINT, SQLUSMALLINT, SQLUSMALLINT); 
     1280   SQLRETURN SQLTablePrivileges(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); 
     1281   SQLRETURN SQLDrivers(SQLHENV, SQLUSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); 
     1282   SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT, SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*); 
     1283   SQLRETURN SQLSetScrollOptions(SQLHSTMT, SQLUSMALLINT, SQLLEN, SQLUSMALLINT);/* deprecated */ 
     1284   DWORD ODBCGetTryWaitValue(); 
     1285   BOOL ODBCSetTryWaitValue(DWORD); 
     1286   RETCODE TraceOpenLogFile(LPWSTR, LPWSTR, DWORD); 
     1287   RETCODE TraceCloseLogFile(); 
     1288   VOID TraceReturn(RETCODE, RETCODE); 
     1289   DWORD TraceVersion(); 
     1290   //static if (ODBCVER >= 0x0300) { 
     1291   SQLRETURN SQLBulkOperations(SQLHSTMT, SQLSMALLINT); 
     1292   SQLRETURN SQLAllocHandleStd( SQLSMALLINT, SQLHANDLE, SQLHANDLE*); 
     1293   //} 
    12941294} 
  • trunk/win32/sqltypes.d

    r122 r135  
    8585//} 
    8686 
    87 struct DATE_STRUCT
     87struct DATE_STRUCT
    8888    SQLSMALLINT year; 
    8989    SQLUSMALLINT month; 
     
    9191} 
    9292 
    93 struct TIME_STRUCT
     93struct TIME_STRUCT
    9494    SQLUSMALLINT hour; 
    9595    SQLUSMALLINT minute; 
     
    9797} 
    9898 
    99 struct TIMESTAMP_STRUCT
     99struct TIMESTAMP_STRUCT
    100100    SQLSMALLINT year; 
    101101    SQLUSMALLINT month; 
     
    134134struct SQL_DAY_SECOND_STRUCT { 
    135135    SQLUINTEGER day; 
    136     SQLUINTEGER    hour; 
     136    SQLUINTEGER hour; 
    137137    SQLUINTEGER minute; 
    138138    SQLUINTEGER second; 
     
    140140} 
    141141 
    142 struct SQL_INTERVAL_STRUCT
     142struct SQL_INTERVAL_STRUCT
    143143    SQLINTERVAL interval_type; 
    144144    SQLSMALLINT interval_sign; 
    145     union intval
     145    union intval
    146146        SQL_YEAR_MONTH_STRUCT year_month; 
    147147        SQL_DAY_SECOND_STRUCT day_second; 
     
    151151const SQL_MAX_NUMERIC_LEN = 16; 
    152152 
    153 struct SQL_NUMERIC_STRUCT
     153struct SQL_NUMERIC_STRUCT
    154154    SQLCHAR precision; 
    155155    SQLSCHAR scale; 
  • trunk/win32/vfw.d

    r127 r135  
    737737DWORD VFWAPIV ICCompress(HIC,DWORD,LPBITMAPINFOHEADER,LPVOID,LPBITMAPINFOHEADER,LPVOID,LPDWORD,LPDWORD,LONG,DWORD,DWORD,LPBITMAPINFOHEADER,LPVOID); 
    738738DWORD VFWAPIV ICDecompress(HIC,DWORD,LPBITMAPINFOHEADER,LPVOID,LPBITMAPINFOHEADER,LPVOID); 
    739 LRESULT    ICSendMessage(HIC,UINT,DWORD,DWORD); 
     739LRESULT ICSendMessage(HIC,UINT,DWORD,DWORD); 
    740740HANDLE ICImageCompress(HIC,UINT,LPBITMAPINFO,LPVOID,LPBITMAPINFO,LONG,LONG*); 
    741741HANDLE ICImageDecompress(HIC,UINT,LPBITMAPINFO,LPVOID,LPBITMAPINFO); 
  • trunk/win32/winbase.d

    r132 r135  
    1313The following macros are obsolete, and have no effect. 
    1414 
    15 LockSegment(w), MakeProcInstance(p,i), UnlockResource(h), UnlockSegment(w) 
     15LockSegment(w), MakeProcInstance(p, i), UnlockResource(h), UnlockSegment(w) 
    1616FreeModule(m), FreeProcInstance(p), GetFreeSpace(w), DefineHandleTable(w) 
    1717SetSwapAreaSize(w), LimitEmsPages(n), Yield() 
     
    1919// The following Win16 functions are obselete in Win32. 
    2020 
    21  int _hread(HFILE,LPVOID,int); 
    22  int _hwrite(HFILE,LPCSTR,int); 
     21 int _hread(HFILE, LPVOID, int); 
     22 int _hwrite(HFILE, LPCSTR, int); 
    2323 HFILE _lclose(HFILE); 
    24  HFILE _lcreat(LPCSTR,int); 
    25  LONG _llseek(HFILE,LONG,int); 
    26  HFILE _lopen(LPCSTR,int); 
    27  UINT _lread(HFILE,LPVOID,UINT); 
    28  UINT _lwrite(HFILE,LPCSTR,UINT); 
     24 HFILE _lcreat(LPCSTR, int); 
     25 LONG _llseek(HFILE, LONG, int); 
     26 HFILE _lopen(LPCSTR, int); 
     27 UINT _lread(HFILE, LPVOID, UINT); 
     28 UINT _lwrite(HFILE, LPCSTR, UINT); 
    2929 SIZE_T GlobalCompact(DWORD); 
    3030 VOID GlobalFix(HGLOBAL); 
     
    3535 SIZE_T LocalCompact(UINT); 
    3636 UINT LocalFlags(HLOCAL); 
    37  SIZE_T LocalShrink(HLOCAL,UINT); 
     37 SIZE_T LocalShrink(HLOCAL, UINT); 
    3838 
    3939// These are not required for DMD. 
     
    4141//FIXME: 
    4242// #ifndef UNDER_CE 
    43     int WinMain(HINSTANCE,HINSTANCE,LPSTR,int); 
     43    int WinMain(HINSTANCE, HINSTANCE, LPSTR, int); 
    4444#else 
    45     int WinMain(HINSTANCE,HINSTANCE,LPWSTR,int); 
     45    int WinMain(HINSTANCE, HINSTANCE, LPWSTR, int); 
    4646#endif 
    47 int wWinMain(HINSTANCE,HINSTANCE,LPWSTR,int); 
     47int wWinMain(HINSTANCE, HINSTANCE, LPWSTR, int); 
    4848 
    4949*/ 
     
    6666// These functions are problematic 
    6767 
    68 version(UseNtoSKernel){}else { 
     68version(UseNtoSKernel) {}else { 
    6969    /* CAREFUL: These are exported from ntoskrnl.exe and declared in winddk.h 
    7070       as __fastcall functions, but are  exported from kernel32.dll as __stdcall */ 
     
    7272     VOID InitializeSListHead(PSLIST_HEADER); 
    7373    } 
    74     LONG InterlockedCompareExchange(LPLONG,LONG,LONG); 
    75     /* PVOID WINAPI InterlockedCompareExchangePointer(PVOID*,PVOID,PVOID); */ 
    76     (PVOID)InterlockedCompareExchange((LPLONG)(d)    (PVOID)InterlockedCompareExchange((LPLONG)(d),(LONG)(e),(LONG)(c)) 
     74    LONG InterlockedCompareExchange(LPLONG, LONG, LONG); 
     75    // PVOID WINAPI InterlockedCompareExchangePointer(PVOID*, PVOID, PVOID); 
     76    (PVOID)InterlockedCompareExchange((LPLONG)(d)    (PVOID)InterlockedCompareExchange((LPLONG)(d), (LONG)(e), (LONG)(c)) 
    7777    LONG InterlockedDecrement(LPLONG); 
    78     LONG InterlockedExchange(LPLONG,LONG); 
    79     /* PVOID WINAPI InterlockedExchangePointer(PVOID*,PVOID); */ 
    80     (PVOID)InterlockedExchange((LPLONG)(    (PVOID)InterlockedExchange((LPLONG)(t),(LONG)(v)) 
    81     LONG InterlockedExchangeAdd(LPLONG,LONG); 
     78    LONG InterlockedExchange(LPLONG, LONG); 
     79    // PVOID WINAPI InterlockedExchangePointer(PVOID*, PVOID); 
     80    (PVOID)InterlockedExchange((LPLONG)(    (PVOID)InterlockedExchange((LPLONG)(t), (LONG)(v)) 
     81    LONG InterlockedExchangeAdd(LPLONG, LONG); 
    8282 
    8383    static if (_WIN32_WINNT >= 0x0501) { 
     
    8787    static if (_WIN32_WINNT >= 0x0501) { 
    8888    PSLIST_ENTRY InterlockedPopEntrySList(PSLIST_HEADER); 
    89     PSLIST_ENTRY InterlockedPushEntrySList(PSLIST_HEADER,PSLIST_ENTRY); 
    90     } 
    91 } // #endif /*  __USE_NTOSKRNL__ */ 
     89    PSLIST_ENTRY InterlockedPushEntrySList(PSLIST_HEADER, PSLIST_ENTRY); 
     90    } 
     91} // #endif //  __USE_NTOSKRNL__ 
    9292//-------------------------------------- 
    9393+/ 
     
    186186 
    187187struct COMMPROP { 
    188     WORD   wPacketLength; 
    189     WORD   wPacketVersion; 
    190     DWORD  dwServiceMask; 
    191     DWORD  dwReserved1; 
    192     DWORD  dwMaxTxQueue; 
    193     DWORD  dwMaxRxQueue; 
    194     DWORD  dwMaxBaud; 
    195     DWORD  dwProvSubType; 
    196     DWORD  dwProvCapabilities; 
    197     DWORD  dwSettableParams; 
    198     DWORD  dwSettableBaud; 
    199     WORD   wSettableData; 
    200     WORD   wSettableStopParity; 
    201     DWORD  dwCurrentTxQueue; 
    202     DWORD  dwCurrentRxQueue; 
    203     DWORD  dwProvSpec1; 
    204     DWORD  dwProvSpec2; 
    205     WCHAR  wcProvChar[1]
    206 } 
    207 alias COMMPROP * LPCOMMPROP; 
     188    WORD     wPacketLength; 
     189    WORD     wPacketVersion; 
     190    DWORD    dwServiceMask; 
     191    DWORD    dwReserved1; 
     192    DWORD    dwMaxTxQueue; 
     193    DWORD    dwMaxRxQueue; 
     194    DWORD    dwMaxBaud; 
     195    DWORD    dwProvSubType; 
     196    DWORD    dwProvCapabilities; 
     197    DWORD    dwSettableParams; 
     198    DWORD    dwSettableBaud; 
     199    WORD     wSettableData; 
     200    WORD     wSettableStopParity; 
     201    DWORD    dwCurrentTxQueue; 
     202    DWORD    dwCurrentRxQueue; 
     203    DWORD    dwProvSpec1; 
     204    DWORD    dwProvSpec2; 
     205    WCHAR[1] wcProvChar
     206} 
     207alias COMMPROP* LPCOMMPROP; 
    208208 
    209209//------- 
     
    233233 
    234234// for OpenFile() 
    235 deprecated { 
    236 enum : UINT { 
     235deprecated enum : UINT { 
    237236    OF_READ      = 0, 
    238237    OF_WRITE     = 1, 
     
    252251    OF_REOPEN  = 32768 
    253252} 
    254 } 
    255253 
    256254enum : DWORD { 
     
    315313} 
    316314 
    317 const DWORD  
     315const DWORD 
    318316    PIPE_TYPE_BYTE        = 0, 
    319317    PIPE_TYPE_MESSAGE     = 4, 
     
    327325    PIPE_CLIENT_END  = 0, 
    328326    PIPE_SERVER_END  = 1; 
    329      
     327 
    330328const DWORD PIPE_UNLIMITED_INSTANCES = 255; 
    331329 
     
    443441} 
    444442 
    445 /* also in ddk/ntapi.h */ 
     443// also in ddk/ntapi.h 
    446444const HANDLE_FLAG_INHERIT            = 0x01; 
    447445const HANDLE_FLAG_PROTECT_FROM_CLOSE = 0x02; 
    448446 
    449 /* end ntapi.h */ 
     447// end ntapi.h 
    450448enum : DWORD { 
    451449    STD_INPUT_HANDLE  = 0xfffffff6, 
     
    470468    THREAD_PRIORITY_NORMAL        = 0, 
    471469    THREAD_PRIORITY_TIME_CRITICAL = 15; 
    472      
     470 
    473471const int THREAD_PRIORITY_ERROR_RETURN = 2147483647; 
    474472 
     
    606604 
    607605// for LoadLibraryEx() 
    608 const DWORD  
     606const DWORD 
    609607    DONT_RESOLVE_DLL_REFERENCES   = 1, // not for WinME and earlier 
    610608    LOAD_LIBRARY_AS_DATAFILE      = 2, 
     
    638636 
    639637// for MoveFileEx() 
    640 const DWORD  
     638const DWORD 
    641639    MOVEFILE_REPLACE_EXISTING   = 1, 
    642640    MOVEFILE_COPY_ALLOWED       = 2, 
     
    650648const WAIT_ABANDONED_0 = 128; 
    651649 
    652 //const WAIT_TIMEOUT=258;  /* also in winerror.h */ 
     650//const WAIT_TIMEOUT=258;  // also in winerror.h 
    653651 
    654652enum : DWORD { 
     
    666664 
    667665// ReadEventLog() 
    668 const DWORD  
     666const DWORD 
    669667    EVENTLOG_SEQUENTIAL_READ = 1, 
    670668    EVENTLOG_SEEK_READ       = 2, 
     
    693691const DWORD FORMAT_MESSAGE_MAX_WIDTH_MASK = 255; 
    694692 
    695 /* also in ddk/ntapi.h */ 
     693// also in ddk/ntapi.h 
    696694enum { 
    697695    SEM_FAILCRITICALERRORS     = 0x0001, 
     
    700698    SEM_NOOPENFILEERRORBOX     = 0x8000 
    701699} 
    702 /* end ntapi.h */ 
     700// end ntapi.h 
    703701 
    704702enum { 
     
    754752 
    755753// GetCommModemStatus() 
    756 const DWORD  
     754const DWORD 
    757755    MS_CTS_ON  = 16, 
    758756    MS_DSR_ON  = 32, 
     
    916914 
    917915struct BY_HANDLE_FILE_INFORMATION { 
    918     DWORD  dwFileAttributes; 
    919     FILETIME   ftCreationTime; 
    920     FILETIME   ftLastAccessTime; 
    921     FILETIME   ftLastWriteTime; 
    922     DWORD  dwVolumeSerialNumber; 
    923     DWORD  nFileSizeHigh; 
    924     DWORD  nFileSizeLow; 
    925     DWORD  nNumberOfLinks; 
    926     DWORD  nFileIndexHigh; 
    927     DWORD  nFileIndexLow; 
     916    DWORD    dwFileAttributes; 
     917    FILETIME ftCreationTime; 
     918    FILETIME ftLastAccessTime; 
     919    FILETIME ftLastWriteTime; 
     920    DWORD    dwVolumeSerialNumber; 
     921    DWORD    nFileSizeHigh; 
     922    DWORD    nFileSizeLow; 
     923    DWORD    nNumberOfLinks; 
     924    DWORD    nFileIndexHigh; 
     925    DWORD    nFileIndexLow; 
    928926} 
    929927alias BY_HANDLE_FILE_INFORMATION* LPBY_HANDLE_FILE_INFORMATION; 
     
    933931    DWORD BaudRate; 
    934932/+ 
    935     DWORD fBinary:1;              /* Binary Mode (skip EOF check)    */ 
    936     DWORD fParity:1;              /* Enable parity checking          */ 
    937     DWORD fOutxCtsFlow:1;         /* CTS handshaking on output       */ 
    938     DWORD fOutxDsrFlow:1;         /* DSR handshaking on output       */ 
    939     DWORD fDtrControl:2;          /* DTR Flow control                */ 
    940     DWORD fDsrSensitivity:1;      /* DSR Sensitivity              */ 
    941     DWORD fTXContinueOnXoff:1;    /* Continue TX when Xoff sent */ 
    942     DWORD fOutX:1;                /* Enable output X-ON/X-OFF        */ 
    943     DWORD fInX:1;                 /* Enable input X-ON/X-OFF         */ 
    944     DWORD fErrorChar:1;           /* Enable Err Replacement          */ 
    945     DWORD fNull:1;                /* Enable Null stripping           */ 
    946     DWORD fRtsControl:2;          /* Rts Flow control                */ 
    947     DWORD fAbortOnError:1;        /* Abort all reads and writes on Error */ 
    948     DWORD fDummy2:17;             /* Reserved                        */ 
     933    DWORD fBinary:1;              // Binary Mode (skip EOF check) 
     934    DWORD fParity:1;              // Enable parity checking 
     935    DWORD fOutxCtsFlow:1;         // CTS handshaking on output 
     936    DWORD fOutxDsrFlow:1;         // DSR handshaking on output 
     937    DWORD fDtrControl:2;          // DTR Flow control 
     938    DWORD fDsrSensitivity:1;      // DSR Sensitivity 
     939    DWORD fTXContinueOnXoff:1;    // Continue TX when Xoff sent 
     940    DWORD fOutX:1;                // Enable output X-ON/X-OFF 
     941    DWORD fInX:1;                 // Enable input X-ON/X-OFF 
     942    DWORD fErrorChar:1;           // Enable Err Replacement 
     943    DWORD fNull:1;                // Enable Null stripping 
     944    DWORD fRtsControl:2;          // Rts Flow control 
     945    DWORD fAbortOnError:1;        // Abort all reads and writes on Error 
     946    DWORD fDummy2:17;             // Reserved 
    949947+/ 
    950948    uint _bf; 
     
    990988    WORD wReserved1; 
    991989} 
    992 alias DCB * LPDCB; 
     990alias DCB* LPDCB; 
    993991 
    994992struct COMMCONFIG { 
     
    10021000    WCHAR wcProviderData[1]; 
    10031001} 
    1004 alias COMMCONFIG * LPCOMMCONFIG; 
    1005  
    1006 struct COMMTIMEOUTS
     1002alias COMMCONFIG* LPCOMMCONFIG; 
     1003 
     1004struct COMMTIMEOUTS
    10071005    DWORD ReadIntervalTimeout; 
    10081006    DWORD ReadTotalTimeoutMultiplier; 
     
    10111009    DWORD WriteTotalTimeoutConstant; 
    10121010} 
    1013 alias COMMTIMEOUTS * LPCOMMTIMEOUTS; 
    1014  
    1015 struct COMSTAT
     1011alias COMMTIMEOUTS* LPCOMMTIMEOUTS; 
     1012 
     1013struct COMSTAT
    10161014/+ 
    10171015    DWORD fCtsHold:1; 
     
    10441042    DWORD cbOutQue; 
    10451043} 
    1046 alias COMSTAT * LPCOMSTAT; 
    1047  
    1048 struct CREATE_PROCESS_DEBUG_INFO
     1044alias COMSTAT* LPCOMSTAT; 
     1045 
     1046struct CREATE_PROCESS_DEBUG_INFO
    10491047    HANDLE hFile; 
    10501048    HANDLE hProcess; 
     
    10581056    WORD fUnicode; 
    10591057} 
    1060 alias CREATE_PROCESS_DEBUG_INFO * LPCREATE_PROCESS_DEBUG_INFO; 
    1061  
    1062 struct CREATE_THREAD_DEBUG_INFO
     1058alias CREATE_PROCESS_DEBUG_INFO* LPCREATE_PROCESS_DEBUG_INFO; 
     1059 
     1060struct CREATE_THREAD_DEBUG_INFO
    10631061    HANDLE hThread; 
    10641062    LPVOID lpThreadLocalBase; 
    10651063    LPTHREAD_START_ROUTINE lpStartAddress; 
    10661064} 
    1067 alias CREATE_THREAD_DEBUG_INFO * LPCREATE_THREAD_DEBUG_INFO; 
    1068  
    1069 struct EXCEPTION_DEBUG_INFO
     1065alias CREATE_THREAD_DEBUG_INFO* LPCREATE_THREAD_DEBUG_INFO; 
     1066 
     1067struct EXCEPTION_DEBUG_INFO
    10701068    EXCEPTION_RECORD ExceptionRecord; 
    10711069    DWORD dwFirstChance; 
    10721070} 
    1073 alias EXCEPTION_DEBUG_INFO * LPEXCEPTION_DEBUG_INFO; 
    1074  
    1075 struct EXIT_THREAD_DEBUG_INFO
     1071alias EXCEPTION_DEBUG_INFO* LPEXCEPTION_DEBUG_INFO; 
     1072 
     1073struct EXIT_THREAD_DEBUG_INFO
    10761074    DWORD dwExitCode; 
    10771075} 
    1078 alias EXIT_THREAD_DEBUG_INFO * LPEXIT_THREAD_DEBUG_INFO; 
    1079  
    1080 struct EXIT_PROCESS_DEBUG_INFO
     1076alias EXIT_THREAD_DEBUG_INFO* LPEXIT_THREAD_DEBUG_INFO; 
     1077 
     1078struct EXIT_PROCESS_DEBUG_INFO
    10811079    DWORD dwExitCode; 
    10821080} 
    1083 alias EXIT_PROCESS_DEBUG_INFO *LPEXIT_PROCESS_DEBUG_INFO; 
    1084  
    1085 struct LOAD_DLL_DEBUG_INFO
     1081alias EXIT_PROCESS_DEBUG_INFO* LPEXIT_PROCESS_DEBUG_INFO; 
     1082 
     1083struct LOAD_DLL_DEBUG_INFO
    10861084    HANDLE hFile; 
    10871085    LPVOID lpBaseOfDll; 
     
    10911089    WORD fUnicode; 
    10921090} 
    1093 alias LOAD_DLL_DEBUG_INFO *LPLOAD_DLL_DEBUG_INFO; 
    1094  
    1095 struct UNLOAD_DLL_DEBUG_INFO
     1091alias LOAD_DLL_DEBUG_INFO* LPLOAD_DLL_DEBUG_INFO; 
     1092 
     1093struct UNLOAD_DLL_DEBUG_INFO
    10961094    LPVOID lpBaseOfDll; 
    10971095} 
    1098 alias UNLOAD_DLL_DEBUG_INFO * LPUNLOAD_DLL_DEBUG_INFO; 
    1099  
    1100 struct OUTPUT_DEBUG_STRING_INFO
     1096alias UNLOAD_DLL_DEBUG_INFO* LPUNLOAD_DLL_DEBUG_INFO; 
     1097 
     1098struct OUTPUT_DEBUG_STRING_INFO
    11011099    LPSTR lpDebugStringData; 
    11021100    WORD fUnicode; 
    11031101    WORD nDebugStringLength; 
    11041102} 
    1105 alias OUTPUT_DEBUG_STRING_INFO * LPOUTPUT_DEBUG_STRING_INFO; 
    1106  
    1107 struct RIP_INFO
     1103alias OUTPUT_DEBUG_STRING_INFO* LPOUTPUT_DEBUG_STRING_INFO; 
     1104 
     1105struct RIP_INFO
    11081106    DWORD dwError; 
    11091107    DWORD dwType; 
    11101108} 
    1111 alias RIP_INFO * LPRIP_INFO; 
    1112  
    1113 struct DEBUG_EVENT
     1109alias RIP_INFO* LPRIP_INFO; 
     1110 
     1111struct DEBUG_EVENT
    11141112    DWORD dwDebugEventCode; 
    11151113    DWORD dwProcessId; 
     
    11271125    } 
    11281126} 
    1129 alias DEBUG_EVENT *LPDEBUG_EVENT; 
    1130  
    1131 struct OVERLAPPED
     1127alias DEBUG_EVENT* LPDEBUG_EVENT; 
     1128 
     1129struct OVERLAPPED
    11321130    DWORD Internal; 
    11331131    DWORD InternalHigh; 
     
    11361134    HANDLE hEvent; 
    11371135} 
    1138 alias OVERLAPPED * POVERLAPPED, LPOVERLAPPED; 
    1139  
    1140 struct STARTUPINFOA
    1141     DWORD  cb
    1142     LPSTR  lpReserved; 
    1143     LPSTR  lpDesktop; 
    1144     LPSTR  lpTitle; 
    1145     DWORD  dwX; 
    1146     DWORD  dwY; 
    1147     DWORD  dwXSize; 
    1148     DWORD  dwYSize; 
    1149     DWORD  dwXCountChars; 
    1150     DWORD  dwYCountChars; 
    1151     DWORD  dwFillAttribute; 
    1152     DWORD  dwFlags; 
    1153     WORD   wShowWindow; 
    1154     WORD   cbReserved2; 
    1155     PBYTE  lpReserved2; 
    1156     HANDLE hStdInput; 
    1157     HANDLE hStdOutput; 
    1158     HANDLE hStdError; 
    1159 } 
    1160 alias STARTUPINFOA * LPSTARTUPINFOA; 
    1161  
    1162 struct STARTUPINFOW
    1163     DWORD  cb
    1164     LPWSTR lpReserved; 
    1165     LPWSTR lpDesktop; 
    1166     LPWSTR lpTitle; 
    1167     DWORD  dwX; 
    1168     DWORD  dwY; 
    1169     DWORD  dwXSize; 
    1170     DWORD  dwYSize; 
    1171     DWORD  dwXCountChars; 
    1172     DWORD  dwYCountChars; 
    1173     DWORD  dwFillAttribute; 
    1174     DWORD  dwFlags; 
    1175     WORD   wShowWindow; 
    1176     WORD   cbReserved2; 
    1177     PBYTE  lpReserved2; 
    1178     HANDLE hStdInput; 
    1179     HANDLE hStdOutput; 
    1180     HANDLE hStdError; 
     1136alias OVERLAPPED* POVERLAPPED, LPOVERLAPPED; 
     1137 
     1138struct STARTUPINFOA
     1139    DWORD  cb = STARTUPINFOA.sizeof
     1140    LPSTR  lpReserved; 
     1141    LPSTR  lpDesktop; 
     1142    LPSTR  lpTitle; 
     1143    DWORD  dwX; 
     1144    DWORD  dwY; 
     1145    DWORD  dwXSize; 
     1146    DWORD  dwYSize; 
     1147    DWORD  dwXCountChars; 
     1148    DWORD  dwYCountChars; 
     1149    DWORD  dwFillAttribute; 
     1150    DWORD  dwFlags; 
     1151    WORD   wShowWindow; 
     1152    WORD   cbReserved2; 
     1153    PBYTE  lpReserved2; 
     1154    HANDLE hStdInput; 
     1155    HANDLE hStdOutput; 
     1156    HANDLE hStdError; 
     1157} 
     1158alias STARTUPINFOA* LPSTARTUPINFOA; 
     1159 
     1160struct STARTUPINFOW
     1161    DWORD  cb = STARTUPINFOW.sizeof
     1162    LPWSTR lpReserved; 
     1163    LPWSTR lpDesktop; 
     1164    LPWSTR lpTitle; 
     1165    DWORD  dwX; 
     1166    DWORD  dwY; 
     1167    DWORD  dwXSize; 
     1168    DWORD  dwYSize; 
     1169    DWORD  dwXCountChars; 
     1170    DWORD  dwYCountChars; 
     1171    DWORD  dwFillAttribute; 
     1172    DWORD  dwFlags; 
     1173    WORD   wShowWindow; 
     1174    WORD   cbReserved2; 
     1175    PBYTE  lpReserved2; 
     1176    HANDLE hStdInput; 
     1177    HANDLE hStdOutput; 
     1178    HANDLE hStdError; 
    11811179} 
    11821180alias STARTUPINFOW* LPSTARTUPINFOW; 
    11831181 
    1184 struct PROCESS_INFORMATION
     1182struct PROCESS_INFORMATION
    11851183    HANDLE hProcess; 
    11861184    HANDLE hThread; 
     
    11901188alias PROCESS_INFORMATION* PPROCESS_INFORMATION, LPPROCESS_INFORMATION; 
    11911189 
    1192 struct CRITICAL_SECTION_DEBUG
     1190struct CRITICAL_SECTION_DEBUG
    11931191    WORD Type; 
    11941192    WORD CreatorBackTraceIndex; 
    1195     CRITICAL_SECTION *CriticalSection; 
     1193    CRITICAL_SECTION* CriticalSection; 
    11961194    LIST_ENTRY ProcessLocksList; 
    11971195    DWORD EntryCount; 
     
    11991197    DWORD Spare [2]; 
    12001198} 
    1201 alias CRITICAL_SECTION_DEBUG * PCRITICAL_SECTION_DEBUG; 
    1202  
    1203 struct CRITICAL_SECTION
     1199alias CRITICAL_SECTION_DEBUG* PCRITICAL_SECTION_DEBUG; 
     1200 
     1201struct CRITICAL_SECTION
    12041202    PCRITICAL_SECTION_DEBUG DebugInfo; 
    12051203    LONG LockCount; 
     
    12091207    DWORD SpinCount; 
    12101208} 
    1211 alias CRITICAL_SECTION * PCRITICAL_SECTION, LPCRITICAL_SECTION; 
    1212  
    1213 struct SYSTEMTIME
     1209alias CRITICAL_SECTION* PCRITICAL_SECTION, LPCRITICAL_SECTION; 
     1210 
     1211struct SYSTEMTIME
    12141212    WORD wYear; 
    12151213    WORD wMonth; 
     
    12211219    WORD wMilliseconds; 
    12221220} 
    1223 alias SYSTEMTIME * LPSYSTEMTIME; 
    1224  
    1225 struct WIN32_FILE_ATTRIBUTE_DATA
    1226     DWORD  dwFileAttributes; 
    1227     FILETIME   ftCreationTime; 
    1228     FILETIME   ftLastAccessTime; 
    1229     FILETIME   ftLastWriteTime; 
    1230     DWORD  nFileSizeHigh; 
    1231     DWORD  nFileSizeLow; 
    1232 } 
    1233 alias WIN32_FILE_ATTRIBUTE_DATA * LPWIN32_FILE_ATTRIBUTE_DATA; 
    1234  
    1235 struct WIN32_FIND_DATAA
     1221alias SYSTEMTIME* LPSYSTEMTIME; 
     1222 
     1223struct WIN32_FILE_ATTRIBUTE_DATA
     1224    DWORD    dwFileAttributes; 
     1225    FILETIME ftCreationTime; 
     1226    FILETIME ftLastAccessTime; 
     1227    FILETIME ftLastWriteTime; 
     1228    DWORD    nFileSizeHigh; 
     1229    DWORD    nFileSizeLow; 
     1230} 
     1231alias WIN32_FILE_ATTRIBUTE_DATA* LPWIN32_FILE_ATTRIBUTE_DATA; 
     1232 
     1233struct WIN32_FIND_DATAA
    12361234    DWORD dwFileAttributes; 
    12371235    FILETIME ftCreationTime; 
     
    12451243    CHAR cAlternateFileName[14]; 
    12461244} 
    1247 alias WIN32_FIND_DATAA * PWIN32_FIND_DATAA, LPWIN32_FIND_DATAA; 
    1248  
    1249 struct WIN32_FIND_DATAW
     1245alias WIN32_FIND_DATAA* PWIN32_FIND_DATAA, LPWIN32_FIND_DATAA; 
     1246 
     1247struct WIN32_FIND_DATAW
    12501248    DWORD dwFileAttributes; 
    12511249    FILETIME ftCreationTime; 
     
    12591257    WCHAR cAlternateFileName[14]; 
    12601258} 
    1261 alias WIN32_FIND_DATAW * PWIN32_FIND_DATAW, LPWIN32_FIND_DATAW; 
    1262  
    1263 struct WIN32_STREAM_ID
     1259alias WIN32_FIND_DATAW* PWIN32_FIND_DATAW, LPWIN32_FIND_DATAW; 
     1260 
     1261struct WIN32_STREAM_ID
    12641262    DWORD dwStreamId; 
    12651263    DWORD dwStreamAttributes; 
     
    12681266    WCHAR cStreamName[ANYSIZE_ARRAY]; 
    12691267} 
    1270 alias WIN32_STREAM_ID *LPWIN32_STREAM_ID; 
    1271  
    1272 enum FINDEX_INFO_LEVELS
     1268alias WIN32_STREAM_ID* LPWIN32_STREAM_ID; 
     1269 
     1270enum FINDEX_INFO_LEVELS
    12731271    FindExInfoStandard, 
    12741272    FindExInfoMaxInfoLevel 
    12751273} 
    12761274 
    1277 enum FINDEX_SEARCH_OPS
     1275enum FINDEX_SEARCH_OPS
    12781276    FindExSearchNameMatch, 
    12791277    FindExSearchLimitToDirectories, 
     
    12821280} 
    12831281 
    1284 enum ACL_INFORMATION_CLASS
     1282enum ACL_INFORMATION_CLASS
    12851283    AclRevisionInformation=1, 
    12861284    AclSizeInformation 
    12871285} 
    12881286 
    1289 struct HW_PROFILE_INFOA
     1287struct HW_PROFILE_INFOA
    12901288    DWORD dwDockInfo; 
    12911289    CHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; 
    12921290    CHAR szHwProfileName[MAX_PROFILE_LEN]; 
    12931291} 
    1294 alias HW_PROFILE_INFOA * LPHW_PROFILE_INFOA; 
    1295  
    1296 struct HW_PROFILE_INFOW
     1292alias HW_PROFILE_INFOA* LPHW_PROFILE_INFOA; 
     1293 
     1294struct HW_PROFILE_INFOW
    12971295    DWORD dwDockInfo; 
    12981296    WCHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; 
    12991297    WCHAR szHwProfileName[MAX_PROFILE_LEN]; 
    13001298} 
    1301 alias HW_PROFILE_INFOW * LPHW_PROFILE_INFOW; 
    1302  
    1303 enum GET_FILEEX_INFO_LEVELS
     1299alias HW_PROFILE_INFOW* LPHW_PROFILE_INFOW; 
     1300 
     1301enum GET_FILEEX_INFO_LEVELS
    13041302    GetFileExInfoStandard, 
    13051303    GetFileExMaxInfoLevel 
    13061304} 
    13071305 
    1308 struct SYSTEM_INFO
     1306struct SYSTEM_INFO
    13091307    union { 
    13101308        DWORD dwOemId; 
     
    13241322    WORD wProcessorRevision; 
    13251323} 
    1326 alias SYSTEM_INFO *LPSYSTEM_INFO; 
    1327  
    1328 struct SYSTEM_POWER_STATUS
     1324alias SYSTEM_INFO* LPSYSTEM_INFO; 
     1325 
     1326struct SYSTEM_POWER_STATUS
    13291327    BYTE ACLineStatus; 
    13301328    BYTE BatteryFlag; 
     
    13341332    DWORD BatteryFullLifeTime; 
    13351333} 
    1336 alias SYSTEM_POWER_STATUS *LPSYSTEM_POWER_STATUS; 
    1337  
    1338 struct TIME_ZONE_INFORMATION
     1334alias SYSTEM_POWER_STATUS* LPSYSTEM_POWER_STATUS; 
     1335 
     1336struct TIME_ZONE_INFORMATION
    13391337    LONG Bias; 
    13401338    WCHAR StandardName[32]; 
     
    13451343    LONG DaylightBias; 
    13461344} 
    1347 alias TIME_ZONE_INFORMATION *LPTIME_ZONE_INFORMATION; 
    1348  
    1349 struct MEMORYSTATUS
     1345alias TIME_ZONE_INFORMATION* LPTIME_ZONE_INFORMATION; 
     1346 
     1347struct MEMORYSTATUS
    13501348    DWORD dwLength; 
    13511349    DWORD dwMemoryLoad; 
     
    13571355    DWORD dwAvailVirtual; 
    13581356} 
    1359 alias MEMORYSTATUS *LPMEMORYSTATUS; 
     1357alias MEMORYSTATUS* LPMEMORYSTATUS; 
    13601358 
    13611359static if (_WIN32_WINNT >= 0x0500) { 
    1362     struct MEMORYSTATUSEX
     1360    struct MEMORYSTATUSEX
    13631361        DWORD dwLength; 
    13641362        DWORD dwMemoryLoad; 
     
    13711369        DWORDLONG ullAvailExtendedVirtual; 
    13721370    } 
    1373     alias MEMORYSTATUSEX *LPMEMORYSTATUSEX; 
    1374 } 
    1375  
    1376 struct LDT_ENTRY
     1371    alias MEMORYSTATUSEX* LPMEMORYSTATUSEX; 
     1372} 
     1373 
     1374struct LDT_ENTRY
    13771375    WORD LimitLow; 
    13781376    WORD BaseLow; 
     
    14251423+/ 
    14261424} 
    1427 alias LDT_ENTRY * PLDT_ENTRY, LPLDT_ENTRY; 
    1428  
    1429 struct PROCESS_HEAP_ENTRY
     1425alias LDT_ENTRY* PLDT_ENTRY, LPLDT_ENTRY; 
     1426 
     1427struct PROCESS_HEAP_ENTRY
    14301428    PVOID lpData; 
    14311429    DWORD cbData; 
     
    14461444    } 
    14471445} 
    1448 alias PROCESS_HEAP_ENTRY * LPPROCESS_HEAP_ENTRY; 
     1446alias PROCESS_HEAP_ENTRY* LPPROCESS_HEAP_ENTRY; 
    14491447 
    14501448deprecated { 
    14511449 
    1452 struct OFSTRUCT
     1450struct OFSTRUCT
    14531451    BYTE cBytes; 
    14541452    BYTE fFixedDisk; 
     
    14581456    CHAR szPathName[128]; // const OFS_MAXPATHNAME = 128; 
    14591457} 
    1460 alias OFSTRUCT * LPOFSTRUCT, POFSTRUCT; 
    1461  
    1462 } 
    1463  
    1464 struct WIN_CERTIFICATE
     1458alias OFSTRUCT* LPOFSTRUCT, POFSTRUCT; 
     1459 
     1460} 
     1461 
     1462struct WIN_CERTIFICATE
    14651463    DWORD dwLength; 
    14661464    WORD wRevision; 
     
    14681466    BYTE bCertificate[1]; 
    14691467} 
    1470 alias WIN_CERTIFICATE * LPWIN_CERTIFICATE; 
    1471  
    1472 static if (_WIN32_WINNT >= 0x0500) {    
    1473     enum COMPUTER_NAME_FORMAT
     1468alias WIN_CERTIFICATE* LPWIN_CERTIFICATE; 
     1469 
     1470static if (_WIN32_WINNT >= 0x0500) { 
     1471    enum COMPUTER_NAME_FORMAT
    14741472        ComputerNameNetBIOS, 
    14751473        ComputerNameDnsHostname, 
     
    14821480        ComputerNameMax 
    14831481    } 
    1484      
     1482 
    14851483} 
    14861484 
    14871485static if (_WIN32_WINNT >= 0x0501) { 
    1488      
    1489     struct ACTCTXA
     1486 
     1487    struct ACTCTXA
    14901488        ULONG cbSize; 
    14911489        DWORD dwFlags; 
     
    14981496        HMODULE hModule; 
    14991497    } 
    1500     alias ACTCTXA *PACTCTXA, PCACTCTXA; 
    1501      
    1502     struct ACTCTXW
     1498    alias ACTCTXA* PACTCTXA, PCACTCTXA; 
     1499 
     1500    struct ACTCTXW
    15031501        ULONG cbSize; 
    15041502        DWORD dwFlags; 
     
    15111509        HMODULE hModule; 
    15121510    } 
    1513     alias ACTCTXW *PACTCTXW, PCACTCTXW; 
    1514      
    1515     struct ACTCTX_SECTION_KEYED_DATA
     1511    alias ACTCTXW* PACTCTXW, PCACTCTXW; 
     1512 
     1513    struct ACTCTX_SECTION_KEYED_DATA
    15161514        ULONG cbSize; 
    15171515        ULONG ulDataFormatVersion; 
     
    15251523        HANDLE ulAssemblyRosterIndex; 
    15261524    } 
    1527     alias ACTCTX_SECTION_KEYED_DATA * PACTCTX_SECTION_KEYED_DATA, PCACTCTX_SECTION_KEYED_DATA; 
    1528      
     1525    alias ACTCTX_SECTION_KEYED_DATA* PACTCTX_SECTION_KEYED_DATA, PCACTCTX_SECTION_KEYED_DATA; 
     1526 
    15291527    enum MEMORY_RESOURCE_NOTIFICATION_TYPE { 
    15301528        LowMemoryResourceNotification, 
    15311529        HighMemoryResourceNotification 
    15321530    } 
    1533      
    1534 }/* (_WIN32_WINNT >= 0x0501) */ 
     1531 
     1532} // (_WIN32_WINNT >= 0x0501) 
    15351533 
    15361534static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
     
    15401538// Callbacks 
    15411539extern(Windows) { 
    1542     alias DWORD function (LPVOID) LPTHREAD_START_ROUTINE; 
    1543     alias DWORD function (LARGE_INTEGER, LARGE_INTEGER, LARGE_INTEGER, LARGE_INTEGER, 
    1544         DWORD,DWORD,HANDLE,HANDLE,LPVOID)  LPPROGRESS_ROUTINE; 
     1540    alias DWORD function(LPVOID) LPTHREAD_START_ROUTINE; 
     1541    alias DWORD function(LARGE_INTEGER, LARGE_INTEGER, LARGE_INTEGER, LARGE_INTEGER, 
     1542        DWORD, DWORD, HANDLE, HANDLE, LPVOID)  LPPROGRESS_ROUTINE; 
    15451543    alias void function(PVOID) LPFIBER_START_ROUTINE; 
    15461544 
    1547     alias BOOL function (HMODULE,LPCTSTR,LPCTSTR,WORD,LONG) ENUMRESLANGPROC; 
    1548     alias BOOL function (HMODULE,LPCTSTR,LPTSTR,LONG) ENUMRESNAMEPROC; 
    1549     alias BOOL function (HMODULE,LPTSTR,LONG) ENUMRESTYPEPROC; 
    1550     alias void function (DWORD,DWORD,LPOVERLAPPED) LPOVERLAPPED_COMPLETION_ROUTINE; 
    1551     alias LONG function (LPEXCEPTION_POINTERS) PTOP_LEVEL_EXCEPTION_FILTER; 
     1545    alias BOOL function(HMODULE, LPCTSTR, LPCTSTR, WORD, LONG) ENUMRESLANGPROC; 
     1546    alias BOOL function(HMODULE, LPCTSTR, LPTSTR, LONG) ENUMRESNAMEPROC; 
     1547    alias BOOL function(HMODULE, LPTSTR, LONG) ENUMRESTYPEPROC; 
     1548    alias void function(DWORD, DWORD, LPOVERLAPPED) LPOVERLAPPED_COMPLETION_ROUTINE; 
     1549    alias LONG function(LPEXCEPTION_POINTERS) PTOP_LEVEL_EXCEPTION_FILTER; 
    15521550    alias PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER; 
    15531551 
    1554     alias void function (DWORD) PAPCFUNC; 
    1555     alias void function (PVOID,DWORD,DWORD) PTIMERAPCROUTINE; 
     1552    alias void function(DWORD) PAPCFUNC; 
     1553    alias void function(PVOID, DWORD, DWORD) PTIMERAPCROUTINE; 
    15561554 
    15571555    static if (_WIN32_WINNT >= 0x0500) { 
    1558         alias void function (PVOID,BOOLEAN) WAITORTIMERCALLBACK; 
     1556        alias void function(PVOID, BOOLEAN) WAITORTIMERCALLBACK; 
    15591557    } 
    15601558} 
    15611559 
    15621560LPTSTR MAKEINTATOM(short i) { 
    1563     return cast(LPTSTR)(i)
     1561    return cast(LPTSTR) i
    15641562} 
    15651563 
    15661564extern (Windows) { 
    15671565 
    1568  BOOL AccessCheck(PSECURITY_DESCRIPTOR,HANDLE,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,PDWORD,PDWORD,PBOOL); 
    1569  BOOL AccessCheckAndAuditAlarmA(LPCSTR,LPVOID,LPSTR,LPSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,PDWORD,PBOOL,PBOOL); 
    1570  BOOL AccessCheckAndAuditAlarmW(LPCWSTR,LPVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,PDWORD,PBOOL,PBOOL); 
    1571  BOOL AddAccessAllowedAce(PACL,DWORD,DWORD,PSID); 
    1572  BOOL AddAccessDeniedAce(PACL,DWORD,DWORD,PSID); 
    1573  BOOL AddAce(PACL,DWORD,DWORD,PVOID,DWORD); 
    1574  ATOM AddAtomA(LPCSTR); 
    1575  ATOM AddAtomW(LPCWSTR); 
    1576  BOOL AddAuditAccessAce(PACL,DWORD,DWORD,PSID,BOOL,BOOL); 
    1577  BOOL AdjustTokenGroups(HANDLE,BOOL,PTOKEN_GROUPS,DWORD,PTOKEN_GROUPS,PDWORD); 
    1578  BOOL AdjustTokenPrivileges(HANDLE,BOOL,PTOKEN_PRIVILEGES,DWORD,PTOKEN_PRIVILEGES,PDWORD); 
    1579  BOOL AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY,BYTE,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,PSID*); 
    1580  BOOL AllocateLocallyUniqueId(PLUID); 
    1581  BOOL AreAllAccessesGranted(DWORD,DWORD); 
    1582  BOOL AreAnyAccessesGranted(DWORD,DWORD); 
    1583  BOOL AreFileApisANSI(); 
    1584  BOOL BackupEventLogA(HANDLE,LPCSTR); 
    1585  BOOL BackupEventLogW(HANDLE,LPCWSTR); 
    1586  BOOL BackupRead(HANDLE,LPBYTE,DWORD,LPDWORD,BOOL,BOOL,LPVOID*); 
    1587  BOOL BackupSeek(HANDLE,DWORD,DWORD,LPDWORD,LPDWORD,LPVOID*); 
    1588  BOOL BackupWrite(HANDLE,LPBYTE,DWORD,LPDWORD,BOOL,BOOL,LPVOID*); 
    1589  BOOL Beep(DWORD,DWORD); 
    1590  HANDLE BeginUpdateResourceA(LPCSTR,BOOL); 
    1591  HANDLE BeginUpdateResourceW(LPCWSTR,BOOL); 
    1592  BOOL BuildCommDCBA(LPCSTR,LPDCB); 
    1593  BOOL BuildCommDCBW(LPCWSTR,LPDCB); 
    1594  BOOL BuildCommDCBAndTimeoutsA(LPCSTR,LPDCB,LPCOMMTIMEOUTS); 
    1595  BOOL BuildCommDCBAndTimeoutsW(LPCWSTR,LPDCB,LPCOMMTIMEOUTS); 
    1596  BOOL CallNamedPipeA(LPCSTR,PVOID,DWORD,PVOID,DWORD,PDWORD,DWORD); 
    1597  BOOL CallNamedPipeW(LPCWSTR,PVOID,DWORD,PVOID,DWORD,PDWORD,DWORD); 
    1598  BOOL CancelDeviceWakeupRequest(HANDLE); 
    1599  BOOL CancelIo(HANDLE); 
    1600  BOOL CancelWaitableTimer(HANDLE); 
    1601  BOOL ClearCommBreak(HANDLE); 
    1602  BOOL ClearCommError(HANDLE,PDWORD,LPCOMSTAT); 
    1603  BOOL ClearEventLogA(HANDLE,LPCSTR); 
    1604  BOOL ClearEventLogW(HANDLE,LPCWSTR); 
    1605  BOOL CloseEventLog(HANDLE); 
    1606  BOOL CloseHandle(HANDLE); 
    1607  BOOL CommConfigDialogA(LPCSTR,HWND,LPCOMMCONFIG); 
    1608  BOOL CommConfigDialogW(LPCWSTR,HWND,LPCOMMCONFIG); 
    1609  LONG CompareFileTime(FILETIME*, FILETIME*); 
    1610  BOOL ConnectNamedPipe(HANDLE,LPOVERLAPPED); 
    1611  BOOL ContinueDebugEvent(DWORD,DWORD,DWORD); 
    1612  PVOID ConvertThreadToFiber(PVOID); 
    1613  BOOL CopyFileA(LPCSTR,LPCSTR,BOOL); 
    1614  BOOL CopyFileW(LPCWSTR,LPCWSTR,BOOL); 
    1615  BOOL CopyFileExA(LPCSTR,LPCSTR,LPPROGRESS_ROUTINE,LPVOID,LPBOOL,DWORD); 
    1616  BOOL CopyFileExW(LPCWSTR,LPCWSTR,LPPROGRESS_ROUTINE,LPVOID,LPBOOL,DWORD); 
    1617  
    1618 /+ FIXME 
    1619 alias memmove RtlMoveMemory; 
    1620 alias memcpy RtlCopyMemory; 
    1621  
    1622 void RtlFillMemory(PVOID dest,SIZE_T len, BYTE fill) { 
    1623     memset(dest, fill, len); 
    1624 
    1625  
    1626 void RtlZeroMemory(PVOID dest, SIZE_T len) { 
    1627     RtlFillMemory(dest, len , 0); 
    1628 
    1629  
    1630 alias RtlMoveMemory MoveMemory; 
    1631 alias RtlCopyMemory CopyMemory; 
    1632 alias RtlFillMemory FillMemory; 
    1633 alias RtlZeroMemory ZeroMemory; 
    1634 +/ 
    1635  
    1636  BOOL CopySid(DWORD,PSID,PSID); 
    1637  BOOL CreateDirectoryA(LPCSTR,LPSECURITY_ATTRIBUTES); 
    1638  BOOL CreateDirectoryW(LPCWSTR,LPSECURITY_ATTRIBUTES); 
    1639  BOOL CreateDirectoryExA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES); 
    1640  BOOL CreateDirectoryExW(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES); 
    1641  HANDLE CreateEventA(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCSTR); 
    1642  HANDLE CreateEventW(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCWSTR); 
    1643  LPVOID CreateFiber(SIZE_T,LPFIBER_START_ROUTINE,LPVOID); 
    1644  HANDLE CreateFileA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE); 
    1645  HANDLE CreateFileW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE); 
    1646  HANDLE CreateFileMappingA(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCSTR); 
    1647  HANDLE CreateFileMappingW(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCWSTR); 
    1648  HANDLE CreateIoCompletionPort(HANDLE,HANDLE,DWORD,DWORD); 
    1649  HANDLE CreateMailslotA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES); 
    1650  HANDLE CreateMailslotW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES); 
    1651  HANDLE CreateMutexA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR); 
    1652  HANDLE CreateMutexW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR); 
    1653  HANDLE CreateNamedPipeA(LPCSTR,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPSECURITY_ATTRIBUTES); 
    1654  HANDLE CreateNamedPipeW(LPCWSTR,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPSECURITY_ATTRIBUTES); 
    1655  BOOL CreatePipe(PHANDLE,PHANDLE,LPSECURITY_ATTRIBUTES,DWORD); 
    1656  BOOL CreatePrivateObjectSecurity(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,BOOL,HANDLE,PGENERIC_MAPPING); 
    1657  BOOL CreateProcessA(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION); 
    1658  BOOL CreateProcessW(LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION); 
    1659  BOOL CreateProcessAsUserA(HANDLE,LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION); 
    1660  BOOL CreateProcessAsUserW(HANDLE,LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION); 
    1661  HANDLE CreateRemoteThread(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD); 
    1662  HANDLE CreateSemaphoreA(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCSTR); 
    1663  HANDLE CreateSemaphoreW(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR); 
    1664  DWORD CreateTapePartition(HANDLE,DWORD,DWORD,DWORD); 
    1665  HANDLE CreateThread(LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,PVOID,DWORD,PDWORD); 
    1666  HANDLE CreateWaitableTimerA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR); 
    1667  HANDLE CreateWaitableTimerW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR); 
    1668  BOOL DebugActiveProcess(DWORD); 
    1669  void DebugBreak(); 
    1670  BOOL DefineDosDeviceA(DWORD,LPCSTR,LPCSTR); 
    1671  BOOL DefineDosDeviceW(DWORD,LPCWSTR,LPCWSTR); 
    1672  BOOL DeleteAce(PACL,DWORD); 
    1673  ATOM DeleteAtom(ATOM); 
    1674  void DeleteCriticalSection(PCRITICAL_SECTION); 
    1675  void DeleteFiber(PVOID); 
    1676  BOOL DeleteFileA(LPCSTR); 
    1677  BOOL DeleteFileW(LPCWSTR); 
    1678  BOOL DeregisterEventSource(HANDLE); 
    1679  BOOL DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR*); 
    1680  BOOL DeviceIoControl(HANDLE,DWORD,PVOID,DWORD,PVOID,DWORD,PDWORD,POVERLAPPED); 
    1681  BOOL DisableThreadLibraryCalls(HMODULE); 
    1682  BOOL DisconnectNamedPipe(HANDLE); 
    1683  BOOL DosDateTimeToFileTime(WORD,WORD,LPFILETIME); 
    1684  BOOL DuplicateHandle(HANDLE,HANDLE,HANDLE,PHANDLE,DWORD,BOOL,DWORD); 
    1685  BOOL DuplicateToken(HANDLE,SECURITY_IMPERSONATION_LEVEL,PHANDLE); 
    1686  BOOL DuplicateTokenEx(HANDLE,DWORD,LPSECURITY_ATTRIBUTES,SECURITY_IMPERSONATION_LEVEL,TOKEN_TYPE,PHANDLE); 
    1687  BOOL EncryptFileA(LPCSTR); 
    1688  BOOL EncryptFileW(LPCWSTR); 
    1689  BOOL EndUpdateResourceA(HANDLE,BOOL); 
    1690  BOOL EndUpdateResourceW(HANDLE,BOOL); 
    1691  void EnterCriticalSection(LPCRITICAL_SECTION); 
    1692  BOOL EnumResourceLanguagesA(HMODULE,LPCSTR,LPCSTR,ENUMRESLANGPROC,LONG_PTR); 
    1693  BOOL EnumResourceLanguagesW(HMODULE,LPCWSTR,LPCWSTR,ENUMRESLANGPROC,LONG_PTR); 
    1694  BOOL EnumResourceNamesA(HMODULE,LPCSTR,ENUMRESNAMEPROC,LONG_PTR); 
    1695  BOOL EnumResourceNamesW(HMODULE,LPCWSTR,ENUMRESNAMEPROC,LONG_PTR); 
    1696  BOOL EnumResourceTypesA(HMODULE,ENUMRESTYPEPROC,LONG_PTR); 
    1697  BOOL EnumResourceTypesW(HMODULE,ENUMRESTYPEPROC,LONG_PTR); 
    1698  BOOL EqualPrefixSid(PSID,PSID); 
    1699  BOOL EqualSid(PSID,PSID); 
    1700  DWORD EraseTape(HANDLE,DWORD,BOOL); 
    1701  BOOL EscapeCommFunction(HANDLE,DWORD); 
    1702  void ExitProcess(UINT); // Never returns 
    1703  void ExitThread(DWORD); // Never returns 
    1704  DWORD ExpandEnvironmentStringsA(LPCSTR,LPSTR,DWORD); 
    1705  DWORD ExpandEnvironmentStringsW(LPCWSTR,LPWSTR,DWORD); 
    1706  void FatalAppExitA(UINT,LPCSTR); 
    1707  void FatalAppExitW(UINT,LPCWSTR); 
    1708  void FatalExit(int); 
    1709  BOOL FileEncryptionStatusA(LPCSTR,LPDWORD); 
    1710  BOOL FileEncryptionStatusW(LPCWSTR,LPDWORD); 
    1711  BOOL FileTimeToDosDateTime(FILETIME *,LPWORD,LPWORD); 
    1712  BOOL FileTimeToLocalFileTime(FILETIME *,LPFILETIME); 
    1713  BOOL FileTimeToSystemTime(FILETIME *,LPSYSTEMTIME); 
    1714  ATOM FindAtomA(LPCSTR); 
    1715  ATOM FindAtomW(LPCWSTR); 
    1716  BOOL FindClose(HANDLE); 
    1717  BOOL FindCloseChangeNotification(HANDLE); 
    1718  HANDLE FindFirstChangeNotificationA(LPCSTR,BOOL,DWORD); 
    1719  HANDLE FindFirstChangeNotificationW(LPCWSTR,BOOL,DWORD); 
    1720  HANDLE FindFirstFileA(LPCSTR,LPWIN32_FIND_DATAA); 
    1721  HANDLE FindFirstFileW(LPCWSTR,LPWIN32_FIND_DATAW); 
    1722  HANDLE FindFirstFileExA(LPCSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD); 
    1723  HANDLE FindFirstFileExW(LPCWSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD); 
    1724  BOOL FindFirstFreeAce(PACL,PVOID*); 
    1725  BOOL FindNextChangeNotification(HANDLE); 
    1726  BOOL FindNextFileA(HANDLE,LPWIN32_FIND_DATAA); 
    1727  BOOL FindNextFileW(HANDLE,LPWIN32_FIND_DATAW); 
    1728  HRSRC FindResourceA(HMODULE,LPCSTR,LPCSTR); 
    1729  HRSRC FindResourceW(HINSTANCE,LPCWSTR,LPCWSTR); 
    1730  HRSRC FindResourceExA(HINSTANCE,LPCSTR,LPCSTR,WORD); 
    1731  HRSRC FindResourceExW(HINSTANCE,LPCWSTR,LPCWSTR,WORD); 
    1732  BOOL FlushFileBuffers(HANDLE); 
    1733  BOOL FlushInstructionCache(HANDLE,PCVOID,DWORD); 
    1734  BOOL FlushViewOfFile(PCVOID,DWORD); 
    1735  DWORD FormatMessageA(DWORD,PCVOID,DWORD,DWORD,LPSTR,DWORD,va_list*); 
    1736  DWORD FormatMessageW(DWORD,PCVOID,DWORD,DWORD,LPWSTR,DWORD,va_list*); 
    1737  BOOL FreeEnvironmentStringsA(LPSTR); 
    1738  BOOL FreeEnvironmentStringsW(LPWSTR); 
    1739  BOOL FreeLibrary(HMODULE); 
    1740  void FreeLibraryAndExitThread(HMODULE,DWORD); // never returns 
    1741  BOOL FreeResource(HGLOBAL); 
    1742  PVOID FreeSid(PSID); 
    1743  BOOL GetAce(PACL,DWORD,LPVOID*); 
    1744  BOOL GetAclInformation(PACL,PVOID,DWORD,ACL_INFORMATION_CLASS); 
    1745  UINT GetAtomNameA(ATOM,LPSTR,int); 
    1746  UINT GetAtomNameW(ATOM,LPWSTR,int); 
    1747  BOOL GetBinaryTypeA(LPCSTR,PDWORD); 
    1748  BOOL GetBinaryTypeW(LPCWSTR,PDWORD); 
    1749  LPSTR GetCommandLineA(); 
    1750  LPWSTR GetCommandLineW(); 
    1751  BOOL GetCommConfig(HANDLE,LPCOMMCONFIG,PDWORD); 
    1752  BOOL GetCommMask(HANDLE,PDWORD); 
    1753  BOOL GetCommModemStatus(HANDLE,PDWORD); 
    1754  BOOL GetCommProperties(HANDLE,LPCOMMPROP); 
    1755  BOOL GetCommState(HANDLE,LPDCB); 
    1756  BOOL GetCommTimeouts(HANDLE,LPCOMMTIMEOUTS); 
    1757  DWORD GetCompressedFileSizeA(LPCSTR,PDWORD); 
    1758  DWORD GetCompressedFileSizeW(LPCWSTR,PDWORD); 
    1759  BOOL GetComputerNameA(LPSTR,PDWORD); 
    1760  BOOL GetComputerNameW(LPWSTR,PDWORD); 
    1761  DWORD GetCurrentDirectoryA(DWORD,LPSTR); 
    1762  DWORD GetCurrentDirectoryW(DWORD,LPWSTR); 
    1763  BOOL GetCurrentHwProfileA(LPHW_PROFILE_INFOA); 
    1764  BOOL GetCurrentHwProfileW(LPHW_PROFILE_INFOW); 
    1765  HANDLE GetCurrentProcess(); 
    1766  DWORD GetCurrentProcessId(); 
    1767  HANDLE GetCurrentThread(); 
    1768  DWORD GetCurrentThreadId(); 
    1769  
    1770 alias GetTickCount GetCurrentTime; 
    1771  
    1772  BOOL GetDefaultCommConfigA(LPCSTR,LPCOMMCONFIG,PDWORD); 
    1773  BOOL GetDefaultCommConfigW(LPCWSTR,LPCOMMCONFIG,PDWORD); 
    1774  BOOL GetDiskFreeSpaceA(LPCSTR,PDWORD,PDWORD,PDWORD,PDWORD); 
    1775  BOOL GetDiskFreeSpaceW(LPCWSTR,PDWORD,PDWORD,PDWORD,PDWORD); 
    1776  BOOL GetDiskFreeSpaceExA(LPCSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER); 
    1777  BOOL GetDiskFreeSpaceExW(LPCWSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER); 
    1778  UINT GetDriveTypeA(LPCSTR); 
    1779  UINT GetDriveTypeW(LPCWSTR); 
    1780  LPSTR GetEnvironmentStrings(); 
    1781  LPSTR GetEnvironmentStringsA(); 
    1782  LPWSTR GetEnvironmentStringsW(); 
    1783  DWORD GetEnvironmentVariableA(LPCSTR,LPSTR,DWORD); 
    1784  DWORD GetEnvironmentVariableW(LPCWSTR,LPWSTR,DWORD); 
    1785  BOOL GetExitCodeProcess(HANDLE,PDWORD); 
    1786  BOOL GetExitCodeThread(HANDLE,PDWORD); 
    1787  DWORD GetFileAttributesA(LPCSTR); 
    1788  DWORD GetFileAttributesW(LPCWSTR); 
    1789  BOOL GetFileAttributesExA(LPCSTR,GET_FILEEX_INFO_LEVELS,PVOID); 
    1790  BOOL GetFileAttributesExW(LPCWSTR,GET_FILEEX_INFO_LEVELS,PVOID); 
    1791  BOOL GetFileInformationByHandle(HANDLE,LPBY_HANDLE_FILE_INFORMATION); 
    1792  BOOL GetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 
    1793  BOOL GetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 
    1794  DWORD GetFileSize(HANDLE,PDWORD); 
    1795  BOOL GetFileTime(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME); 
    1796  DWORD GetFileType(HANDLE); 
    1797  DWORD GetFullPathNameA(LPCSTR,DWORD,LPSTR,LPSTR*); 
    1798  DWORD GetFullPathNameW(LPCWSTR,DWORD,LPWSTR,LPWSTR*); 
    1799  BOOL GetHandleInformation(HANDLE,PDWORD); 
    1800  BOOL GetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 
    1801  DWORD GetLastError(); 
    1802  DWORD GetLengthSid(PSID); 
    1803  void GetLocalTime(LPSYSTEMTIME); 
    1804  DWORD GetLogicalDrives(); 
    1805  DWORD GetLogicalDriveStringsA(DWORD,LPSTR); 
    1806  DWORD GetLogicalDriveStringsW(DWORD,LPWSTR); 
    1807  BOOL GetMailslotInfo(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD); 
    1808  DWORD GetModuleFileNameA(HINSTANCE,LPSTR,DWORD); 
    1809  DWORD GetModuleFileNameW(HINSTANCE,LPWSTR,DWORD); 
    1810  HMODULE GetModuleHandleA(LPCSTR); 
    1811  HMODULE GetModuleHandleW(LPCWSTR); 
    1812  BOOL GetNamedPipeHandleStateA(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD,LPSTR,DWORD); 
    1813  BOOL GetNamedPipeHandleStateW(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD); 
    1814  BOOL GetNamedPipeInfo(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD); 
    1815  BOOL GetNumberOfEventLogRecords(HANDLE,PDWORD); 
    1816  BOOL GetOldestEventLogRecord(HANDLE,PDWORD); 
    1817  BOOL GetOverlappedResult(HANDLE,LPOVERLAPPED,PDWORD,BOOL); 
    1818  DWORD GetPriorityClass(HANDLE); 
    1819  BOOL GetPrivateObjectSecurity(PSECURITY_DESCRIPTOR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 
    1820  UINT GetPrivateProfileIntA(LPCSTR,LPCSTR,INT,LPCSTR); 
    1821  UINT GetPrivateProfileIntW(LPCWSTR,LPCWSTR,INT,LPCWSTR); 
    1822  DWORD GetPrivateProfileSectionA(LPCSTR,LPSTR,DWORD,LPCSTR); 
    1823  DWORD GetPrivateProfileSectionW(LPCWSTR,LPWSTR,DWORD,LPCWSTR); 
    1824  DWORD GetPrivateProfileSectionNamesA(LPSTR,DWORD,LPCSTR); 
    1825  DWORD GetPrivateProfileSectionNamesW(LPWSTR,DWORD,LPCWSTR); 
    1826  DWORD GetPrivateProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPSTR,DWORD,LPCSTR); 
    1827  DWORD GetPrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,DWORD,LPCWSTR); 
    1828  BOOL GetPrivateProfileStructA(LPCSTR,LPCSTR,LPVOID,UINT,LPCSTR); 
    1829  BOOL GetPrivateProfileStructW(LPCWSTR,LPCWSTR,LPVOID,UINT,LPCWSTR); 
    1830  FARPROC GetProcAddress(HINSTANCE,LPCSTR); 
    1831  BOOL GetProcessAffinityMask(HANDLE,PDWORD,PDWORD); 
    1832  HANDLE GetProcessHeap(); 
    1833  DWORD GetProcessHeaps(DWORD,PHANDLE); 
    1834  BOOL GetProcessPriorityBoost(HANDLE,PBOOL); 
    1835  BOOL GetProcessShutdownParameters(PDWORD,PDWORD); 
    1836  BOOL GetProcessTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME); 
    1837  DWORD GetProcessVersion(DWORD); 
    1838  HWINSTA GetProcessWindowStation(); 
    1839  BOOL GetProcessWorkingSetSize(HANDLE,PSIZE_T,PSIZE_T); 
    1840  UINT GetProfileIntA(LPCSTR,LPCSTR,INT); 
    1841  UINT GetProfileIntW(LPCWSTR,LPCWSTR,INT); 
    1842  DWORD GetProfileSectionA(LPCSTR,LPSTR,DWORD); 
    1843  DWORD GetProfileSectionW(LPCWSTR,LPWSTR,DWORD); 
    1844  DWORD GetProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPSTR,DWORD); 
    1845  DWORD GetProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,DWORD); 
    1846  BOOL GetQueuedCompletionStatus(HANDLE,PDWORD,PDWORD,LPOVERLAPPED*,DWORD); 
    1847  BOOL GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR_CONTROL,PDWORD); 
    1848  BOOL GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL); 
    1849  BOOL GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID*,LPBOOL); 
    1850  DWORD GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR); 
    1851  BOOL GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID*,LPBOOL); 
    1852  BOOL GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL); 
    1853  DWORD GetShortPathNameA(LPCSTR,LPSTR,DWORD); 
    1854  DWORD GetShortPathNameW(LPCWSTR,LPWSTR,DWORD); 
    1855  PSID_IDENTIFIER_AUTHORITY GetSidIdentifierAuthority(PSID); 
    1856  DWORD GetSidLengthRequired(UCHAR); 
    1857  PDWORD GetSidSubAuthority(PSID,DWORD); 
    1858  PUCHAR GetSidSubAuthorityCount(PSID); 
    1859  VOID GetStartupInfoA(LPSTARTUPINFOA); 
    1860  VOID GetStartupInfoW(LPSTARTUPINFOW); 
    1861  HANDLE GetStdHandle(DWORD); 
    1862  UINT GetSystemDirectoryA(LPSTR,UINT); 
    1863  UINT GetSystemDirectoryW(LPWSTR,UINT); 
    1864  VOID GetSystemInfo(LPSYSTEM_INFO); 
    1865  BOOL GetSystemPowerStatus(LPSYSTEM_POWER_STATUS); 
    1866  VOID GetSystemTime(LPSYSTEMTIME); 
    1867  BOOL GetSystemTimeAdjustment(PDWORD,PDWORD,PBOOL); 
    1868  void GetSystemTimeAsFileTime(LPFILETIME); 
    1869  DWORD GetTapeParameters(HANDLE,DWORD,PDWORD,PVOID); 
    1870  DWORD GetTapePosition(HANDLE,DWORD,PDWORD,PDWORD,PDWORD); 
    1871  DWORD GetTapeStatus(HANDLE); 
    1872  UINT GetTempFileNameA(LPCSTR,LPCSTR,UINT,LPSTR); 
    1873  UINT GetTempFileNameW(LPCWSTR,LPCWSTR,UINT,LPWSTR); 
    1874  DWORD GetTempPathA(DWORD,LPSTR); 
    1875  DWORD GetTempPathW(DWORD,LPWSTR); 
    1876  BOOL GetThreadContext(HANDLE,LPCONTEXT); 
    1877  int GetThreadPriority(HANDLE); 
    1878  BOOL GetThreadPriorityBoost(HANDLE,PBOOL); 
    1879  BOOL GetThreadSelectorEntry(HANDLE,DWORD,LPLDT_ENTRY); 
    1880  BOOL GetThreadTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME); 
    1881  DWORD GetTickCount(); 
    1882  DWORD GetTimeZoneInformation(LPTIME_ZONE_INFORMATION); 
    1883  BOOL GetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD,PDWORD); 
    1884  BOOL GetUserNameA (LPSTR,PDWORD); 
    1885  BOOL GetUserNameW(LPWSTR,PDWORD); 
    1886  DWORD GetVersion(); 
    1887  BOOL GetVersionExA(LPOSVERSIONINFOA); 
    1888  BOOL GetVersionExW(LPOSVERSIONINFOW); 
    1889  BOOL GetVolumeInformationA(LPCSTR,LPSTR,DWORD,PDWORD,PDWORD,PDWORD,LPSTR,DWORD); 
    1890  BOOL GetVolumeInformationW(LPCWSTR,LPWSTR,DWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD); 
    1891  UINT GetWindowsDirectoryA(LPSTR,UINT); 
    1892  UINT GetWindowsDirectoryW(LPWSTR,UINT); 
    1893  DWORD GetWindowThreadProcessId(HWND,PDWORD); 
    1894  UINT GetWriteWatch(DWORD,PVOID,SIZE_T,PVOID*,PULONG_PTR,PULONG); 
    1895  ATOM GlobalAddAtomA(LPCSTR); 
    1896  ATOM GlobalAddAtomW( LPCWSTR); 
    1897  HGLOBAL GlobalAlloc(UINT,DWORD); 
    1898  ATOM GlobalDeleteAtom(ATOM); 
    1899  HGLOBAL GlobalDiscard(HGLOBAL); 
    1900  ATOM GlobalFindAtomA(LPCSTR); 
    1901  ATOM GlobalFindAtomW(LPCWSTR); 
    1902  HGLOBAL GlobalFree(HGLOBAL); 
    1903  UINT GlobalGetAtomNameA(ATOM,LPSTR,int); 
    1904  UINT GlobalGetAtomNameW(ATOM,LPWSTR,int); 
    1905  HGLOBAL GlobalHandle(PCVOID); 
    1906  LPVOID GlobalLock(HGLOBAL); 
    1907  VOID GlobalMemoryStatus(LPMEMORYSTATUS); 
    1908  HGLOBAL GlobalReAlloc(HGLOBAL,DWORD,UINT); 
    1909  DWORD GlobalSize(HGLOBAL); 
    1910  BOOL GlobalUnlock(HGLOBAL); 
    1911  
    1912 bool HasOverlappedIoCompleted(LPOVERLAPPED lpOverlapped) { 
    1913     return lpOverlapped.Internal != STATUS_PENDING; 
    1914 
    1915  
    1916  PVOID HeapAlloc(HANDLE,DWORD,DWORD); 
    1917 SIZE_T HeapCompact(HANDLE,DWORD); 
    1918  HANDLE HeapCreate(DWORD,DWORD,DWORD); 
    1919  BOOL HeapDestroy(HANDLE); 
    1920  BOOL HeapFree(HANDLE,DWORD,PVOID); 
    1921  BOOL HeapLock(HANDLE); 
    1922  PVOID HeapReAlloc(HANDLE,DWORD,PVOID,DWORD); 
    1923  DWORD HeapSize(HANDLE,DWORD,PCVOID); 
    1924  BOOL HeapUnlock(HANDLE); 
    1925  BOOL HeapValidate(HANDLE,DWORD,PCVOID); 
    1926  BOOL HeapWalk(HANDLE,LPPROCESS_HEAP_ENTRY); 
    1927  BOOL ImpersonateLoggedOnUser(HANDLE); 
    1928  BOOL ImpersonateNamedPipeClient(HANDLE); 
    1929  BOOL ImpersonateSelf(SECURITY_IMPERSONATION_LEVEL); 
    1930  BOOL InitAtomTable(DWORD); 
    1931  BOOL InitializeAcl(PACL,DWORD,DWORD); 
    1932  VOID InitializeCriticalSection(LPCRITICAL_SECTION); 
    1933  BOOL InitializeCriticalSectionAndSpinCount(LPCRITICAL_SECTION,DWORD); 
    1934  DWORD SetCriticalSectionSpinCount(LPCRITICAL_SECTION,DWORD); 
    1935  BOOL InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR,DWORD); 
    1936  BOOL InitializeSid (PSID,PSID_IDENTIFIER_AUTHORITY,BYTE); 
    1937  BOOL IsBadCodePtr(FARPROC); 
    1938  BOOL IsBadHugeReadPtr(PCVOID,UINT); 
    1939  BOOL IsBadHugeWritePtr(PVOID,UINT); 
    1940  BOOL IsBadReadPtr(PCVOID,UINT); 
    1941  BOOL IsBadStringPtrA(LPCSTR,UINT); 
    1942  BOOL IsBadStringPtrW(LPCWSTR,UINT); 
    1943  BOOL IsBadWritePtr(PVOID,UINT); 
    1944  BOOL IsDebuggerPresent(); 
    1945  BOOL IsProcessorFeaturePresent(DWORD); 
    1946  BOOL IsSystemResumeAutomatic(); 
    1947  BOOL IsTextUnicode(PCVOID,int,LPINT); 
    1948  BOOL IsValidAcl(PACL); 
    1949  BOOL IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR); 
    1950  BOOL IsValidSid(PSID); 
    1951  void LeaveCriticalSection(LPCRITICAL_SECTION); 
    1952  HINSTANCE LoadLibraryA(LPCSTR); 
    1953  HINSTANCE LoadLibraryExA(LPCSTR,HANDLE,DWORD); 
    1954  HINSTANCE LoadLibraryExW(LPCWSTR,HANDLE,DWORD); 
    1955  HINSTANCE LoadLibraryW(LPCWSTR); 
    1956  DWORD LoadModule(LPCSTR,PVOID); 
    1957  HGLOBAL LoadResource(HINSTANCE,HRSRC); 
    1958  HLOCAL LocalAlloc(UINT,SIZE_T); 
    1959  HLOCAL LocalDiscard(HLOCAL); 
    1960  BOOL LocalFileTimeToFileTime(FILETIME *,LPFILETIME); 
    1961  HLOCAL LocalFree(HLOCAL); 
    1962  HLOCAL LocalHandle(LPCVOID); 
    1963  PVOID LocalLock(HLOCAL); 
    1964  HLOCAL LocalReAlloc(HLOCAL,SIZE_T,UINT); 
    1965  UINT LocalSize(HLOCAL); 
    1966  BOOL LocalUnlock(HLOCAL); 
    1967  BOOL LockFile(HANDLE,DWORD,DWORD,DWORD,DWORD); 
    1968  BOOL LockFileEx(HANDLE,DWORD,DWORD,DWORD,DWORD,LPOVERLAPPED); 
    1969  PVOID LockResource(HGLOBAL); 
    1970  BOOL LogonUserA(LPSTR,LPSTR,LPSTR,DWORD,DWORD,PHANDLE); 
    1971  BOOL LogonUserW(LPWSTR,LPWSTR,LPWSTR,DWORD,DWORD,PHANDLE); 
    1972  BOOL LookupAccountNameA(LPCSTR,LPCSTR,PSID,PDWORD,LPSTR,PDWORD,PSID_NAME_USE); 
    1973  BOOL LookupAccountNameW(LPCWSTR,LPCWSTR,PSID,PDWORD,LPWSTR,PDWORD,PSID_NAME_USE); 
    1974  BOOL LookupAccountSidA(LPCSTR,PSID,LPSTR,PDWORD,LPSTR,PDWORD,PSID_NAME_USE); 
    1975  BOOL LookupAccountSidW(LPCWSTR,PSID,LPWSTR,PDWORD,LPWSTR,PDWORD,PSID_NAME_USE); 
    1976  BOOL LookupPrivilegeDisplayNameA(LPCSTR,LPCSTR,LPSTR,PDWORD,PDWORD); 
    1977  BOOL LookupPrivilegeDisplayNameW(LPCWSTR,LPCWSTR,LPWSTR,PDWORD,PDWORD); 
    1978  BOOL LookupPrivilegeNameA(LPCSTR,PLUID,LPSTR,PDWORD); 
    1979  BOOL LookupPrivilegeNameW(LPCWSTR,PLUID,LPWSTR,PDWORD); 
    1980  BOOL LookupPrivilegeValueA(LPCSTR,LPCSTR,PLUID); 
    1981  BOOL LookupPrivilegeValueW(LPCWSTR,LPCWSTR,PLUID); 
    1982  
    1983  LPSTR lstrcatA(LPSTR,LPCSTR); 
    1984  LPWSTR lstrcatW(LPWSTR,LPCWSTR); 
    1985  int lstrcmpA(LPCSTR,LPCSTR); 
    1986  int lstrcmpiA(LPCSTR,LPCSTR); 
    1987  int lstrcmpiW( LPCWSTR,LPCWSTR); 
    1988  int lstrcmpW(LPCWSTR,LPCWSTR); 
    1989  LPSTR lstrcpyA(LPSTR,LPCSTR); 
    1990  LPSTR lstrcpynA(LPSTR,LPCSTR,int); 
    1991  LPWSTR lstrcpynW(LPWSTR,LPCWSTR,int); 
    1992  LPWSTR lstrcpyW(LPWSTR,LPCWSTR); 
    1993  int lstrlenA(LPCSTR); 
    1994  int lstrlenW(LPCWSTR); 
    1995  
    1996  BOOL MakeAbsoluteSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD,PACL,PDWORD,PACL,PDWORD,PSID,PDWORD,PSID,PDWORD); 
    1997  BOOL MakeSelfRelativeSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD); 
    1998  VOID MapGenericMask(PDWORD,PGENERIC_MAPPING); 
    1999  PVOID MapViewOfFile(HANDLE,DWORD,DWORD,DWORD,DWORD); 
    2000  PVOID MapViewOfFileEx(HANDLE,DWORD,DWORD,DWORD,DWORD,PVOID); 
    2001  BOOL MoveFileA(LPCSTR,LPCSTR); 
    2002  BOOL MoveFileExA(LPCSTR,LPCSTR,DWORD); 
    2003  BOOL MoveFileExW(LPCWSTR,LPCWSTR,DWORD); 
    2004  BOOL MoveFileW(LPCWSTR,LPCWSTR); 
    2005  int MulDiv(int,int,int); 
    2006  BOOL NotifyChangeEventLog(HANDLE,HANDLE); 
    2007  BOOL ObjectCloseAuditAlarmA(LPCSTR,PVOID,BOOL); 
    2008  BOOL ObjectCloseAuditAlarmW(LPCWSTR,PVOID,BOOL); 
    2009  BOOL ObjectDeleteAuditAlarmA(LPCSTR,PVOID,BOOL); 
    2010  BOOL ObjectDeleteAuditAlarmW(LPCWSTR,PVOID,BOOL); 
    2011  BOOL ObjectOpenAuditAlarmA(LPCSTR,PVOID,LPSTR,LPSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,PBOOL); 
    2012  BOOL ObjectOpenAuditAlarmW(LPCWSTR,PVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,PBOOL); 
    2013  BOOL ObjectPrivilegeAuditAlarmA(LPCSTR,PVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL); 
    2014  BOOL ObjectPrivilegeAuditAlarmW(LPCWSTR,PVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL); 
    2015  HANDLE OpenBackupEventLogA(LPCSTR,LPCSTR); 
    2016  HANDLE OpenBackupEventLogW(LPCWSTR,LPCWSTR); 
    2017  HANDLE OpenEventA(DWORD,BOOL,LPCSTR); 
    2018  HANDLE OpenEventLogA (LPCSTR,LPCSTR); 
    2019  HANDLE OpenEventLogW(LPCWSTR,LPCWSTR); 
    2020  HANDLE OpenEventW(DWORD,BOOL,LPCWSTR); 
    2021 deprecated { 
    2022  HFILE OpenFile(LPCSTR,LPOFSTRUCT,UINT); 
    2023 
    2024  HANDLE OpenFileMappingA(DWORD,BOOL,LPCSTR); 
    2025  HANDLE OpenFileMappingW(DWORD,BOOL,LPCWSTR); 
    2026  HANDLE OpenMutexA(DWORD,BOOL,LPCSTR); 
    2027  HANDLE OpenMutexW(DWORD,BOOL,LPCWSTR); 
    2028  HANDLE OpenProcess(DWORD,BOOL,DWORD); 
    2029  BOOL OpenProcessToken(HANDLE,DWORD,PHANDLE); 
    2030  HANDLE OpenSemaphoreA(DWORD,BOOL,LPCSTR); 
    2031  HANDLE OpenSemaphoreW(DWORD,BOOL,LPCWSTR); 
    2032  BOOL OpenThreadToken(HANDLE,DWORD,BOOL,PHANDLE); 
    2033  HANDLE OpenWaitableTimerA(DWORD,BOOL,LPCSTR); 
    2034  HANDLE OpenWaitableTimerW(DWORD,BOOL,LPCWSTR); 
    2035  void OutputDebugStringA(LPCSTR); 
    2036  void OutputDebugStringW(LPCWSTR); 
    2037  BOOL PeekNamedPipe(HANDLE,PVOID,DWORD,PDWORD,PDWORD,PDWORD); 
    2038  BOOL PostQueuedCompletionStatus(HANDLE,DWORD,DWORD,LPOVERLAPPED); 
    2039  DWORD PrepareTape(HANDLE,DWORD,BOOL); 
    2040  BOOL PrivilegeCheck (HANDLE,PPRIVILEGE_SET,PBOOL); 
    2041  BOOL PrivilegedServiceAuditAlarmA(LPCSTR,LPCSTR,HANDLE,PPRIVILEGE_SET,BOOL); 
    2042  BOOL PrivilegedServiceAuditAlarmW(LPCWSTR,LPCWSTR,HANDLE,PPRIVILEGE_SET,BOOL); 
    2043  BOOL PulseEvent(HANDLE); 
    2044  BOOL PurgeComm(HANDLE,DWORD); 
    2045  DWORD QueryDosDeviceA(LPCSTR,LPSTR,DWORD); 
    2046  DWORD QueryDosDeviceW(LPCWSTR,LPWSTR,DWORD); 
    2047  BOOL QueryPerformanceCounter(PLARGE_INTEGER); 
    2048  BOOL QueryPerformanceFrequency(PLARGE_INTEGER); 
    2049  DWORD QueueUserAPC(PAPCFUNC,HANDLE,DWORD); 
    2050  void RaiseException(DWORD,DWORD,DWORD, DWORD*); 
    2051  BOOL ReadDirectoryChangesW(HANDLE,PVOID,DWORD,BOOL,DWORD,PDWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE); 
    2052  BOOL ReadEventLogA(HANDLE,DWORD,DWORD,PVOID,DWORD,DWORD *,DWORD *); 
    2053  BOOL ReadEventLogW(HANDLE,DWORD,DWORD,PVOID,DWORD,DWORD *,DWORD *); 
    2054  BOOL ReadFile(HANDLE,PVOID,DWORD,PDWORD,LPOVERLAPPED); 
    2055  BOOL ReadFileEx(HANDLE,PVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE); 
    2056  BOOL ReadFileScatter(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED); 
    2057  BOOL ReadProcessMemory(HANDLE,PCVOID,PVOID,DWORD,PDWORD); 
    2058  HANDLE RegisterEventSourceA (LPCSTR,LPCSTR); 
    2059  HANDLE RegisterEventSourceW(LPCWSTR,LPCWSTR); 
    2060  BOOL ReleaseMutex(HANDLE); 
    2061  BOOL ReleaseSemaphore(HANDLE,LONG,LPLONG); 
    2062  BOOL RemoveDirectoryA(LPCSTR); 
    2063  BOOL RemoveDirectoryW(LPCWSTR); 
    2064  BOOL ReportEventA(HANDLE,WORD,WORD,DWORD,PSID,WORD,DWORD,LPCSTR*,PVOID); 
    2065  BOOL ReportEventW(HANDLE,WORD,WORD,DWORD,PSID,WORD,DWORD,LPCWSTR*,PVOID); 
    2066  BOOL ResetEvent(HANDLE); 
    2067  UINT ResetWriteWatch(LPVOID,SIZE_T); 
    2068  DWORD ResumeThread(HANDLE); 
    2069  BOOL RevertToSelf(); 
    2070  DWORD SearchPathA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPSTR,LPSTR*); 
    2071  DWORD SearchPathW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPWSTR,LPWSTR*); 
    2072  BOOL SetAclInformation(PACL,PVOID,DWORD,ACL_INFORMATION_CLASS); 
    2073  BOOL SetCommBreak(HANDLE); 
    2074  BOOL SetCommConfig(HANDLE,LPCOMMCONFIG,DWORD); 
    2075  BOOL SetCommMask(HANDLE,DWORD); 
    2076  BOOL SetCommState(HANDLE,LPDCB); 
    2077  BOOL SetCommTimeouts(HANDLE,LPCOMMTIMEOUTS); 
    2078  BOOL SetComputerNameA(LPCSTR); 
    2079  BOOL SetComputerNameW(LPCWSTR); 
    2080  BOOL SetCurrentDirectoryA(LPCSTR); 
    2081  BOOL SetCurrentDirectoryW(LPCWSTR); 
    2082  BOOL SetDefaultCommConfigA(LPCSTR,LPCOMMCONFIG,DWORD); 
    2083  BOOL SetDefaultCommConfigW(LPCWSTR,LPCOMMCONFIG,DWORD); 
    2084  BOOL SetEndOfFile(HANDLE); 
    2085  BOOL SetEnvironmentVariableA(LPCSTR,LPCSTR); 
    2086  BOOL SetEnvironmentVariableW(LPCWSTR,LPCWSTR); 
    2087  UINT SetErrorMode(UINT); 
    2088  BOOL SetEvent(HANDLE); 
    2089  VOID SetFileApisToANSI(); 
    2090  VOID SetFileApisToOEM(); 
    2091  BOOL SetFileAttributesA(LPCSTR,DWORD); 
    2092  BOOL SetFileAttributesW(LPCWSTR,DWORD); 
    2093  DWORD SetFilePointer(HANDLE,LONG,PLONG,DWORD); 
    2094  BOOL SetFilePointerEx(HANDLE,LARGE_INTEGER,PLARGE_INTEGER,DWORD); 
    2095  BOOL SetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); 
    2096  BOOL SetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); 
    2097  BOOL SetFileTime(HANDLE, FILETIME*, FILETIME*, FILETIME*); 
    2098  UINT SetHandleCount(UINT); 
    2099  BOOL SetHandleInformation(HANDLE,DWORD,DWORD); 
    2100  BOOL SetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); 
    2101  void SetLastError(DWORD); 
    2102  void SetLastErrorEx(DWORD,DWORD); 
    2103  BOOL SetLocalTime( SYSTEMTIME*); 
    2104  BOOL SetMailslotInfo(HANDLE,DWORD); 
    2105  BOOL SetNamedPipeHandleState(HANDLE,PDWORD,PDWORD,PDWORD); 
    2106  BOOL SetPriorityClass(HANDLE,DWORD); 
    2107  BOOL SetPrivateObjectSecurity(SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR *,PGENERIC_MAPPING,HANDLE); 
    2108  BOOL SetProcessAffinityMask(HANDLE,DWORD); 
    2109  BOOL SetProcessPriorityBoost(HANDLE,BOOL); 
    2110  BOOL SetProcessShutdownParameters(DWORD,DWORD); 
    2111  BOOL SetProcessWorkingSetSize(HANDLE,DWORD,DWORD); 
    2112  BOOL SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,SECURITY_DESCRIPTOR_CONTROL,SECURITY_DESCRIPTOR_CONTROL); 
    2113  BOOL SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL); 
    2114  BOOL SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID,BOOL); 
    2115  BOOL SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID,BOOL); 
    2116  BOOL SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL); 
    2117  BOOL SetStdHandle(DWORD,HANDLE); 
    2118  BOOL SetSystemPowerState(BOOL,BOOL); 
    2119  BOOL SetSystemTime( SYSTEMTIME*); 
    2120  BOOL SetSystemTimeAdjustment(DWORD,BOOL); 
    2121  DWORD SetTapeParameters(HANDLE,DWORD,PVOID); 
    2122  DWORD SetTapePosition(HANDLE,DWORD,DWORD,DWORD,DWORD,BOOL); 
    2123  DWORD SetThreadAffinityMask(HANDLE,DWORD); 
    2124  BOOL SetThreadContext(HANDLE, CONTEXT*); 
    2125  DWORD SetThreadIdealProcessor(HANDLE,DWORD); 
    2126  BOOL SetThreadPriority(HANDLE,int); 
    2127  BOOL SetThreadPriorityBoost(HANDLE,BOOL); 
    2128  BOOL SetThreadToken (PHANDLE,HANDLE); 
    2129  BOOL SetTimeZoneInformation( TIME_ZONE_INFORMATION *); 
    2130  BOOL SetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD); 
    2131  LPTOP_LEVEL_EXCEPTION_FILTER SetUnhandledExceptionFilter(LPTOP_LEVEL_EXCEPTION_FILTER); 
    2132  BOOL SetupComm(HANDLE,DWORD,DWORD); 
    2133  BOOL SetVolumeLabelA(LPCSTR,LPCSTR); 
    2134  BOOL SetVolumeLabelW(LPCWSTR,LPCWSTR); 
    2135  BOOL SetWaitableTimer(HANDLE, LARGE_INTEGER*,LONG,PTIMERAPCROUTINE,PVOID,BOOL); 
    2136  DWORD SignalObjectAndWait(HANDLE,HANDLE,DWORD,BOOL); 
    2137  DWORD SizeofResource(HINSTANCE,HRSRC); 
    2138  void Sleep(DWORD); 
    2139  DWORD SleepEx(DWORD,BOOL); 
    2140  DWORD SuspendThread(HANDLE); 
    2141  void SwitchToFiber(PVOID); 
    2142  BOOL SwitchToThread(); 
    2143  BOOL SystemTimeToFileTime( SYSTEMTIME*,LPFILETIME); 
    2144  BOOL SystemTimeToTzSpecificLocalTime(LPTIME_ZONE_INFORMATION,LPSYSTEMTIME,LPSYSTEMTIME); 
    2145  BOOL TerminateProcess(HANDLE,UINT); 
    2146  BOOL TerminateThread(HANDLE,DWORD); 
    2147  DWORD TlsAlloc(); 
    2148  BOOL TlsFree(DWORD); 
    2149  PVOID TlsGetValue(DWORD); 
    2150  BOOL TlsSetValue(DWORD,PVOID); 
    2151  BOOL TransactNamedPipe(HANDLE,PVOID,DWORD,PVOID,DWORD,PDWORD,LPOVERLAPPED); 
    2152  BOOL TransmitCommChar(HANDLE,char); 
    2153  BOOL TryEnterCriticalSection(LPCRITICAL_SECTION); 
    2154  LONG UnhandledExceptionFilter(LPEXCEPTION_POINTERS); 
    2155  BOOL UnlockFile(HANDLE,DWORD,DWORD,DWORD,DWORD); 
    2156  BOOL UnlockFileEx(HANDLE,DWORD,DWORD,DWORD,LPOVERLAPPED); 
    2157  BOOL UnmapViewOfFile(PVOID); 
    2158  BOOL UpdateResourceA(HANDLE,LPCSTR,LPCSTR,WORD,PVOID,DWORD); 
    2159  BOOL UpdateResourceW(HANDLE,LPCWSTR,LPCWSTR,WORD,PVOID,DWORD); 
    2160  BOOL VerifyVersionInfoA(LPOSVERSIONINFOEXA,DWORD,DWORDLONG); 
    2161  BOOL VerifyVersionInfoW(LPOSVERSIONINFOEXW,DWORD,DWORDLONG); 
    2162  PVOID VirtualAlloc(PVOID,DWORD,DWORD,DWORD); 
    2163  PVOID VirtualAllocEx(HANDLE,PVOID,DWORD,DWORD,DWORD); 
    2164  BOOL VirtualFree(PVOID,DWORD,DWORD); 
    2165  BOOL VirtualFreeEx(HANDLE,PVOID,DWORD,DWORD); 
    2166  BOOL VirtualLock(PVOID,DWORD); 
    2167  BOOL VirtualProtect(PVOID,DWORD,DWORD,PDWORD); 
    2168  BOOL VirtualProtectEx(HANDLE,PVOID,DWORD,DWORD,PDWORD); 
    2169  DWORD VirtualQuery(LPCVOID,PMEMORY_BASIC_INFORMATION,DWORD); 
    2170  DWORD VirtualQueryEx(HANDLE,LPCVOID,PMEMORY_BASIC_INFORMATION,DWORD); 
    2171  BOOL VirtualUnlock(PVOID,DWORD); 
    2172  BOOL WaitCommEvent(HANDLE,PDWORD,LPOVERLAPPED); 
    2173  BOOL WaitForDebugEvent(LPDEBUG_EVENT,DWORD); 
    2174  DWORD WaitForMultipleObjects(DWORD, HANDLE*,BOOL,DWORD); 
    2175  DWORD WaitForMultipleObjectsEx(DWORD, HANDLE*,BOOL,DWORD,BOOL); 
    2176  DWORD WaitForSingleObject(HANDLE,DWORD); 
    2177  DWORD WaitForSingleObjectEx(HANDLE,DWORD,BOOL); 
    2178  BOOL WaitNamedPipeA(LPCSTR,DWORD); 
    2179  BOOL WaitNamedPipeW(LPCWSTR,DWORD); 
    2180  BOOL WinLoadTrustProvider(GUID*); 
    2181  BOOL WriteFile(HANDLE,PCVOID,DWORD,PDWORD,LPOVERLAPPED); 
    2182  BOOL WriteFileEx(HANDLE,PCVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE); 
    2183  BOOL WriteFileGather(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED); 
    2184  BOOL WritePrivateProfileSectionA(LPCSTR,LPCSTR,LPCSTR); 
    2185  BOOL WritePrivateProfileSectionW(LPCWSTR,LPCWSTR,LPCWSTR); 
    2186  BOOL WritePrivateProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPCSTR); 
    2187  BOOL WritePrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR); 
    2188  BOOL WritePrivateProfileStructA(LPCSTR,LPCSTR,LPVOID,UINT,LPCSTR); 
    2189  BOOL WritePrivateProfileStructW(LPCWSTR,LPCWSTR,LPVOID,UINT,LPCWSTR); 
    2190  BOOL WriteProcessMemory(HANDLE,LPVOID,LPCVOID,SIZE_T,SIZE_T*); 
    2191  BOOL WriteProfileSectionA(LPCSTR,LPCSTR); 
    2192  BOOL WriteProfileSectionW(LPCWSTR,LPCWSTR); 
    2193  BOOL WriteProfileStringA(LPCSTR,LPCSTR,LPCSTR); 
    2194  BOOL WriteProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR); 
    2195  DWORD WriteTapemark(HANDLE,DWORD,DWORD,BOOL); 
    2196  
    2197 // ------ 
    2198 // functions added in later Windows versions 
    2199  
    2200 static if (_WIN32_WINNT >= 0x0400) { 
    2201  LPVOID CreateFiberEx(SIZE_T,SIZE_T,DWORD,LPFIBER_START_ROUTINE,LPVOID); 
    2202  BOOL ConvertFiberToThread(); 
    2203 
    2204 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
    2205  DWORD GetLongPathNameA(LPCSTR,LPSTR,DWORD); 
    2206  DWORD GetLongPathNameW(LPCWSTR,LPWSTR,DWORD); 
    2207  EXECUTION_STATE SetThreadExecutionState(EXECUTION_STATE); 
    2208 
    2209 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490)) { 
    2210  HANDLE OpenThread(DWORD,BOOL,DWORD); 
    2211 
    2212  
    2213 static if (_WIN32_WINNT >= 0x0500) { 
    2214  BOOL AddAccessAllowedAceEx(PACL,DWORD,DWORD,DWORD,PSID); 
    2215  BOOL AddAccessDeniedAceEx(PACL,DWORD,DWORD,DWORD,PSID); 
    2216  PVOID AddVectoredExceptionHandler(ULONG,PVECTORED_EXCEPTION_HANDLER); 
    2217  BOOL CreateHardLinkA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES); 
    2218  BOOL CreateHardLinkW(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES); 
    2219  HANDLE CreateJobObjectA(LPSECURITY_ATTRIBUTES,LPCSTR); 
    2220  HANDLE CreateJobObjectW(LPSECURITY_ATTRIBUTES,LPCWSTR); 
    2221  BOOL TerminateJobObject(HANDLE,UINT); 
    2222  BOOL AssignProcessToJobObject(HANDLE,HANDLE); 
    2223  BOOL DeleteTimerQueue(HANDLE); 
    2224  BOOL DeleteTimerQueueEx(HANDLE,HANDLE); 
    2225  BOOL DeleteTimerQueueTimer(HANDLE,HANDLE,HANDLE); 
    2226  BOOL DeleteVolumeMountPointA(LPCSTR); 
    2227  BOOL DeleteVolumeMountPointW(LPCWSTR); 
    2228  BOOL CreateProcessWithLogonW (LPCWSTR,LPCWSTR,LPCWSTR,DWORD, 
    2229             LPCWSTR,LPWSTR,DWORD,LPVOID, 
    2230             LPCWSTR,LPSTARTUPINFOW, 
    2231             LPPROCESS_INFORMATION); 
    2232     enum { 
    2233         LOGON_WITH_PROFILE=0x00000001, 
    2234         LOGON_NETCREDENTIALS_ONLY=0x00000002 
    2235     } 
    2236  HANDLE CreateTimerQueue(); 
    2237  BOOL CreateTimerQueueTimer(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,DWORD,DWORD,ULONG); 
    2238  BOOL DnsHostnameToComputerNameA(LPCSTR,LPSTR,LPDWORD); 
    2239  BOOL DnsHostnameToComputerNameW(LPCWSTR,LPWSTR,LPDWORD); 
    2240  HANDLE FindFirstVolumeA(LPCSTR,DWORD); 
    2241  HANDLE FindFirstVolumeW(LPCWSTR,DWORD); 
    2242  HANDLE FindFirstVolumeMountPointA(LPSTR,LPSTR,DWORD); 
    2243  HANDLE FindFirstVolumeMountPointW(LPWSTR,LPWSTR,DWORD); 
    2244  BOOL FindNextVolumeA(HANDLE,LPCSTR,DWORD); 
    2245  BOOL FindNextVolumeW(HANDLE,LPWSTR,DWORD); 
    2246  BOOL FindNextVolumeMountPointA(HANDLE,LPSTR,DWORD); 
    2247  BOOL FindNextVolumeMountPointW(HANDLE,LPWSTR,DWORD); 
    2248  BOOL FindVolumeClose(HANDLE); 
    2249  BOOL FindVolumeMountPointClose(HANDLE); 
    2250  BOOL GetComputerNameExA(COMPUTER_NAME_FORMAT,LPSTR,LPDWORD); 
    2251  BOOL GetComputerNameExW(COMPUTER_NAME_FORMAT,LPWSTR,LPDWORD); 
    2252  BOOL GetFileSizeEx(HANDLE,PLARGE_INTEGER); 
    2253  BOOL GetModuleHandleExA(DWORD,LPCSTR,HMODULE*); 
    2254  BOOL GetModuleHandleExW(DWORD,LPCWSTR,HMODULE*); 
    2255  BOOL GetProcessIoCounters(HANDLE,PIO_COUNTERS); 
    2256  UINT GetSystemWindowsDirectoryA(LPSTR,UINT); 
    2257  UINT GetSystemWindowsDirectoryW(LPWSTR,UINT); 
    2258  BOOL GetVolumeNameForVolumeMountPointA(LPCSTR,LPSTR,DWORD); 
    2259  BOOL GetVolumeNameForVolumeMountPointW(LPCWSTR,LPWSTR,DWORD); 
    2260  BOOL GetVolumePathNameA(LPCSTR,LPSTR,DWORD); 
    2261  BOOL GetVolumePathNameW(LPCWSTR,LPWSTR,DWORD); 
    2262  BOOL GlobalMemoryStatusEx(LPMEMORYSTATUSEX); 
    2263  BOOL SetVolumeMountPointA(LPCSTR,LPCSTR); 
    2264  BOOL SetVolumeMountPointW(LPCWSTR,LPCWSTR); 
    2265  BOOL UnregisterWaitEx(HANDLE,HANDLE); 
    2266  BOOL AllocateUserPhysicalPages(HANDLE,PULONG_PTR,PULONG_PTR); 
    2267  BOOL FreeUserPhysicalPages(HANDLE,PULONG_PTR,PULONG_PTR); 
    2268  BOOL MapUserPhysicalPages(PVOID,ULONG_PTR,PULONG_PTR); 
    2269  BOOL MapUserPhysicalPagesScatter(PVOID*,ULONG_PTR,PULONG_PTR); 
    2270  BOOL ProcessIdToSessionId(DWORD,DWORD*); 
    2271  ULONG RemoveVectoredExceptionHandler(PVOID); 
    2272  BOOL ReplaceFileA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPVOID,LPVOID); 
    2273  BOOL ReplaceFileW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPVOID,LPVOID); 
    2274  BOOL SetComputerNameExA(COMPUTER_NAME_FORMAT,LPCSTR); 
    2275  BOOL SetComputerNameExW(COMPUTER_NAME_FORMAT,LPCWSTR); 
    2276 
    2277  
    2278 static if (_WIN32_WINNT >= 0x0501) { 
    2279  BOOL ActivateActCtx(HANDLE,ULONG_PTR*); 
    2280  void AddRefActCtx(HANDLE); 
    2281  BOOL CheckNameLegalDOS8Dot3A(LPCSTR,LPSTR,DWORD,PBOOL,PBOOL); 
    2282  BOOL CheckNameLegalDOS8Dot3W(LPCWSTR,LPSTR,DWORD,PBOOL,PBOOL); 
    2283  BOOL CheckRemoteDebuggerPresent(HANDLE,PBOOL); 
    2284  HANDLE CreateActCtxA(PCACTCTXA); 
    2285  HANDLE CreateActCtxW(PCACTCTXW); 
    2286  HANDLE CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE); 
    2287  BOOL DebugActiveProcessStop(DWORD); 
    2288  BOOL DebugBreakProcess(HANDLE); 
    2289  BOOL DebugSetProcessKillOnExit(BOOL); 
    2290  BOOL DeactivateActCtx(DWORD,ULONG_PTR); 
    2291  BOOL GetCurrentActCtx(HANDLE*); 
    2292  BOOL FindActCtxSectionGuid(DWORD, GUID*,ULONG, GUID*,PACTCTX_SECTION_KEYED_DATA); 
    2293  BOOL FindActCtxSectionStringA(DWORD, GUID*,ULONG,LPCSTR,PACTCTX_SECTION_KEYED_DATA); 
    2294  BOOL FindActCtxSectionStringW(DWORD, GUID*,ULONG,LPCWSTR,PACTCTX_SECTION_KEYED_DATA); 
    2295  VOID GetNativeSystemInfo(LPSYSTEM_INFO); 
    2296  BOOL GetSystemTimes(LPFILETIME,LPFILETIME,LPFILETIME); 
    2297  UINT GetSystemWow64DirectoryA(LPSTR,UINT); 
    2298  UINT GetSystemWow64DirectoryW(LPWSTR,UINT); 
    2299  BOOL GetVolumePathNamesForVolumeNameA(LPCSTR,LPSTR,DWORD,PDWORD); 
    2300  BOOL GetVolumePathNamesForVolumeNameW(LPCWSTR,LPWSTR,DWORD,PDWORD); 
    2301  BOOL HeapQueryInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T,PSIZE_T); 
    2302  BOOL HeapSetInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T); 
    2303  BOOL IsProcessInJob(HANDLE,HANDLE,PBOOL); 
    2304  BOOL IsWow64Process(HANDLE,PBOOL); 
    2305  BOOL QueryActCtxW(DWORD,HANDLE,PVOID,ULONG,PVOID,SIZE_T,SIZE_T*); 
    2306  BOOL QueryMemoryResourceNotification(HANDLE,PBOOL); 
    2307  void ReleaseActCtx(HANDLE); 
    2308  BOOL SetFileShortNameA(HANDLE,LPCSTR); 
    2309  BOOL SetFileShortNameW(HANDLE,LPCWSTR); 
    2310  BOOL SetFileValidData(HANDLE,LONGLONG); 
    2311  BOOL ZombifyActCtx(HANDLE); 
    2312 
    2313 static if (_WIN32_WINNT >= 0x0502) { 
    2314  DWORD GetFirmwareEnvironmentVariableA(LPCSTR,LPCSTR,PVOID,DWORD); 
    2315  DWORD GetFirmwareEnvironmentVariableW(LPCWSTR,LPCWSTR,PVOID,DWORD); 
    2316  DWORD GetDllDirectoryA(DWORD,LPSTR); 
    2317  DWORD GetDllDirectoryW(DWORD,LPWSTR); 
    2318  DWORD GetProcessId(HANDLE); 
    2319  BOOL GetProcessHandleCount(HANDLE,PDWORD); 
    2320  BOOL GetSystemRegistryQuota(PDWORD,PDWORD); 
    2321  BOOL GetThreadIOPendingFlag(HANDLE,PBOOL); 
    2322  BOOL SetDllDirectoryA(LPCSTR); 
    2323  BOOL SetDllDirectoryW(LPCWSTR); 
    2324  BOOL SetFirmwareEnvironmentVariableA(LPCSTR,LPCSTR,PVOID,DWORD); 
    2325  BOOL SetFirmwareEnvironmentVariableW(LPCWSTR,LPCWSTR,PVOID,DWORD); 
    2326 
    2327  
    2328  
    2329 static if (_WIN32_WINNT >= 0x0510) { 
    2330  VOID RestoreLastError(DWORD); 
    2331 
     1566    BOOL AccessCheck(PSECURITY_DESCRIPTOR, HANDLE, DWORD, PGENERIC_MAPPING, PPRIVILEGE_SET, PDWORD, PDWORD, PBOOL); 
     1567    BOOL AccessCheckAndAuditAlarmA(LPCSTR, LPVOID, LPSTR, LPSTR, PSECURITY_DESCRIPTOR, DWORD, PGENERIC_MAPPING, BOOL, PDWORD, PBOOL, PBOOL); 
     1568    BOOL AccessCheckAndAuditAlarmW(LPCWSTR, LPVOID, LPWSTR, LPWSTR, PSECURITY_DESCRIPTOR, DWORD, PGENERIC_MAPPING, BOOL, PDWORD, PBOOL, PBOOL); 
     1569    BOOL AddAccessAllowedAce(PACL, DWORD, DWORD, PSID); 
     1570    BOOL AddAccessDeniedAce(PACL, DWORD, DWORD, PSID); 
     1571    BOOL AddAce(PACL, DWORD, DWORD, PVOID, DWORD); 
     1572    ATOM AddAtomA(LPCSTR); 
     1573    ATOM AddAtomW(LPCWSTR); 
     1574    BOOL AddAuditAccessAce(PACL, DWORD, DWORD, PSID, BOOL, BOOL); 
     1575    BOOL AdjustTokenGroups(HANDLE, BOOL, PTOKEN_GROUPS, DWORD, PTOKEN_GROUPS, PDWORD); 
     1576    BOOL AdjustTokenPrivileges(HANDLE, BOOL, PTOKEN_PRIVILEGES, DWORD, PTOKEN_PRIVILEGES, PDWORD); 
     1577    BOOL AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY, BYTE, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, PSID*); 
     1578    BOOL AllocateLocallyUniqueId(PLUID); 
     1579    BOOL AreAllAccessesGranted(DWORD, DWORD); 
     1580    BOOL AreAnyAccessesGranted(DWORD, DWORD); 
     1581    BOOL AreFileApisANSI(); 
     1582    BOOL BackupEventLogA(HANDLE, LPCSTR); 
     1583    BOOL BackupEventLogW(HANDLE, LPCWSTR); 
     1584    BOOL BackupRead(HANDLE, LPBYTE, DWORD, LPDWORD, BOOL, BOOL, LPVOID*); 
     1585    BOOL BackupSeek(HANDLE, DWORD, DWORD, LPDWORD, LPDWORD, LPVOID*); 
     1586    BOOL BackupWrite(HANDLE, LPBYTE, DWORD, LPDWORD, BOOL, BOOL, LPVOID*); 
     1587    BOOL Beep(DWORD, DWORD); 
     1588    HANDLE BeginUpdateResourceA(LPCSTR, BOOL); 
     1589    HANDLE BeginUpdateResourceW(LPCWSTR, BOOL); 
     1590    BOOL BuildCommDCBA(LPCSTR, LPDCB); 
     1591    BOOL BuildCommDCBW(LPCWSTR, LPDCB); 
     1592    BOOL BuildCommDCBAndTimeoutsA(LPCSTR, LPDCB, LPCOMMTIMEOUTS); 
     1593    BOOL BuildCommDCBAndTimeoutsW(LPCWSTR, LPDCB, LPCOMMTIMEOUTS); 
     1594    BOOL CallNamedPipeA(LPCSTR, PVOID, DWORD, PVOID, DWORD, PDWORD, DWORD); 
     1595    BOOL CallNamedPipeW(LPCWSTR, PVOID, DWORD, PVOID, DWORD, PDWORD, DWORD); 
     1596    BOOL CancelDeviceWakeupRequest(HANDLE); 
     1597    BOOL CancelIo(HANDLE); 
     1598    BOOL CancelWaitableTimer(HANDLE); 
     1599    BOOL ClearCommBreak(HANDLE); 
     1600    BOOL ClearCommError(HANDLE, PDWORD, LPCOMSTAT); 
     1601    BOOL ClearEventLogA(HANDLE, LPCSTR); 
     1602    BOOL ClearEventLogW(HANDLE, LPCWSTR); 
     1603    BOOL CloseEventLog(HANDLE); 
     1604    BOOL CloseHandle(HANDLE); 
     1605    BOOL CommConfigDialogA(LPCSTR, HWND, LPCOMMCONFIG); 
     1606    BOOL CommConfigDialogW(LPCWSTR, HWND, LPCOMMCONFIG); 
     1607    LONG CompareFileTime(FILETIME*, FILETIME*); 
     1608    BOOL ConnectNamedPipe(HANDLE, LPOVERLAPPED); 
     1609    BOOL ContinueDebugEvent(DWORD, DWORD, DWORD); 
     1610    PVOID ConvertThreadToFiber(PVOID); 
     1611    BOOL CopyFileA(LPCSTR, LPCSTR, BOOL); 
     1612    BOOL CopyFileW(LPCWSTR, LPCWSTR, BOOL); 
     1613    BOOL CopyFileExA(LPCSTR, LPCSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL, DWORD); 
     1614    BOOL CopyFileExW(LPCWSTR, LPCWSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL, DWORD); 
     1615 
     1616    /+ FIXME 
     1617    alias memmove RtlMoveMemory; 
     1618    alias memcpy RtlCopyMemory; 
     1619 
     1620    void RtlFillMemory(PVOID dest, SIZE_T len, BYTE fill) { 
     1621        memset(dest, fill, len); 
     1622    } 
     1623 
     1624    void RtlZeroMemory(PVOID dest, SIZE_T len) { 
     1625        RtlFillMemory(dest, len , 0); 
     1626    } 
     1627 
     1628    alias RtlMoveMemory MoveMemory; 
     1629    alias RtlCopyMemory CopyMemory; 
     1630    alias RtlFillMemory FillMemory; 
     1631    alias RtlZeroMemory ZeroMemory; 
     1632    +/ 
     1633 
     1634    BOOL CopySid(DWORD, PSID, PSID); 
     1635    BOOL CreateDirectoryA(LPCSTR, LPSECURITY_ATTRIBUTES); 
     1636    BOOL CreateDirectoryW(LPCWSTR, LPSECURITY_ATTRIBUTES); 
     1637    BOOL CreateDirectoryExA(LPCSTR, LPCSTR, LPSECURITY_ATTRIBUTES); 
     1638    BOOL CreateDirectoryExW(LPCWSTR, LPCWSTR, LPSECURITY_ATTRIBUTES); 
     1639    HANDLE CreateEventA(LPSECURITY_ATTRIBUTES, BOOL, BOOL, LPCSTR); 
     1640    HANDLE CreateEventW(LPSECURITY_ATTRIBUTES, BOOL, BOOL, LPCWSTR); 
     1641    LPVOID CreateFiber(SIZE_T, LPFIBER_START_ROUTINE, LPVOID); 
     1642    HANDLE CreateFileA(LPCSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, DWORD, HANDLE); 
     1643    HANDLE CreateFileW(LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, DWORD, HANDLE); 
     1644    HANDLE CreateFileMappingA(HANDLE, LPSECURITY_ATTRIBUTES, DWORD, DWORD, DWORD, LPCSTR); 
     1645    HANDLE CreateFileMappingW(HANDLE, LPSECURITY_ATTRIBUTES, DWORD, DWORD, DWORD, LPCWSTR); 
     1646    HANDLE CreateIoCompletionPort(HANDLE, HANDLE, DWORD, DWORD); 
     1647    HANDLE CreateMailslotA(LPCSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES); 
     1648    HANDLE CreateMailslotW(LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES); 
     1649    HANDLE CreateMutexA(LPSECURITY_ATTRIBUTES, BOOL, LPCSTR); 
     1650    HANDLE CreateMutexW(LPSECURITY_ATTRIBUTES, BOOL, LPCWSTR); 
     1651    HANDLE CreateNamedPipeA(LPCSTR, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, LPSECURITY_ATTRIBUTES); 
     1652    HANDLE CreateNamedPipeW(LPCWSTR, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, LPSECURITY_ATTRIBUTES); 
     1653    BOOL CreatePipe(PHANDLE, PHANDLE, LPSECURITY_ATTRIBUTES, DWORD); 
     1654    BOOL CreatePrivateObjectSecurity(PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR*, BOOL, HANDLE, PGENERIC_MAPPING); 
     1655    BOOL CreateProcessA(LPCSTR, LPSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, PVOID, LPCSTR, LPSTARTUPINFOA, LPPROCESS_INFORMATION); 
     1656    BOOL CreateProcessW(LPCWSTR, LPWSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, PVOID, LPCWSTR, LPSTARTUPINFOW, LPPROCESS_INFORMATION); 
     1657    BOOL CreateProcessAsUserA(HANDLE, LPCSTR, LPSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, PVOID, LPCSTR, LPSTARTUPINFOA, LPPROCESS_INFORMATION); 
     1658    BOOL CreateProcessAsUserW(HANDLE, LPCWSTR, LPWSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, PVOID, LPCWSTR, LPSTARTUPINFOW, LPPROCESS_INFORMATION); 
     1659    HANDLE CreateRemoteThread(HANDLE, LPSECURITY_ATTRIBUTES, DWORD, LPTHREAD_START_ROUTINE, LPVOID, DWORD, LPDWORD); 
     1660    HANDLE CreateSemaphoreA(LPSECURITY_ATTRIBUTES, LONG, LONG, LPCSTR); 
     1661    HANDLE CreateSemaphoreW(LPSECURITY_ATTRIBUTES, LONG, LONG, LPCWSTR); 
     1662    DWORD CreateTapePartition(HANDLE, DWORD, DWORD, DWORD); 
     1663    HANDLE CreateThread(LPSECURITY_ATTRIBUTES, DWORD, LPTHREAD_START_ROUTINE, PVOID, DWORD, PDWORD); 
     1664    HANDLE CreateWaitableTimerA(LPSECURITY_ATTRIBUTES, BOOL, LPCSTR); 
     1665    HANDLE CreateWaitableTimerW(LPSECURITY_ATTRIBUTES, BOOL, LPCWSTR); 
     1666    BOOL DebugActiveProcess(DWORD); 
     1667    void DebugBreak(); 
     1668    BOOL DefineDosDeviceA(DWORD, LPCSTR, LPCSTR); 
     1669    BOOL DefineDosDeviceW(DWORD, LPCWSTR, LPCWSTR); 
     1670    BOOL DeleteAce(PACL, DWORD); 
     1671    ATOM DeleteAtom(ATOM); 
     1672    void DeleteCriticalSection(PCRITICAL_SECTION); 
     1673    void DeleteFiber(PVOID); 
     1674    BOOL DeleteFileA(LPCSTR); 
     1675    BOOL DeleteFileW(LPCWSTR); 
     1676    BOOL DeregisterEventSource(HANDLE); 
     1677    BOOL DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR*); 
     1678    BOOL DeviceIoControl(HANDLE, DWORD, PVOID, DWORD, PVOID, DWORD, PDWORD, POVERLAPPED); 
     1679    BOOL DisableThreadLibraryCalls(HMODULE); 
     1680    BOOL DisconnectNamedPipe(HANDLE); 
     1681    BOOL DosDateTimeToFileTime(WORD, WORD, LPFILETIME); 
     1682    BOOL DuplicateHandle(HANDLE, HANDLE, HANDLE, PHANDLE, DWORD, BOOL, DWORD); 
     1683    BOOL DuplicateToken(HANDLE, SECURITY_IMPERSONATION_LEVEL, PHANDLE); 
     1684    BOOL DuplicateTokenEx(HANDLE, DWORD, LPSECURITY_ATTRIBUTES, SECURITY_IMPERSONATION_LEVEL, TOKEN_TYPE, PHANDLE); 
     1685    BOOL EncryptFileA(LPCSTR); 
     1686    BOOL EncryptFileW(LPCWSTR); 
     1687    BOOL EndUpdateResourceA(HANDLE, BOOL); 
     1688    BOOL EndUpdateResourceW(HANDLE, BOOL); 
     1689    void EnterCriticalSection(LPCRITICAL_SECTION); 
     1690    BOOL EnumResourceLanguagesA(HMODULE, LPCSTR, LPCSTR, ENUMRESLANGPROC, LONG_PTR); 
     1691    BOOL EnumResourceLanguagesW(HMODULE, LPCWSTR, LPCWSTR, ENUMRESLANGPROC, LONG_PTR); 
     1692    BOOL EnumResourceNamesA(HMODULE, LPCSTR, ENUMRESNAMEPROC, LONG_PTR); 
     1693    BOOL EnumResourceNamesW(HMODULE, LPCWSTR, ENUMRESNAMEPROC, LONG_PTR); 
     1694    BOOL EnumResourceTypesA(HMODULE, ENUMRESTYPEPROC, LONG_PTR); 
     1695    BOOL EnumResourceTypesW(HMODULE, ENUMRESTYPEPROC, LONG_PTR); 
     1696    BOOL EqualPrefixSid(PSID, PSID); 
     1697    BOOL EqualSid(PSID, PSID); 
     1698    DWORD EraseTape(HANDLE, DWORD, BOOL); 
     1699    BOOL EscapeCommFunction(HANDLE, DWORD); 
     1700    void ExitProcess(UINT); // Never returns 
     1701    void ExitThread(DWORD); // Never returns 
     1702    DWORD ExpandEnvironmentStringsA(LPCSTR, LPSTR, DWORD); 
     1703    DWORD ExpandEnvironmentStringsW(LPCWSTR, LPWSTR, DWORD); 
     1704    void FatalAppExitA(UINT, LPCSTR); 
     1705    void FatalAppExitW(UINT, LPCWSTR); 
     1706    void FatalExit(int); 
     1707    BOOL FileEncryptionStatusA(LPCSTR, LPDWORD); 
     1708    BOOL FileEncryptionStatusW(LPCWSTR, LPDWORD); 
     1709    BOOL FileTimeToDosDateTime(FILETIME* , LPWORD, LPWORD); 
     1710    BOOL FileTimeToLocalFileTime(FILETIME* , LPFILETIME); 
     1711    BOOL FileTimeToSystemTime(FILETIME* , LPSYSTEMTIME); 
     1712    ATOM FindAtomA(LPCSTR); 
     1713    ATOM FindAtomW(LPCWSTR); 
     1714    BOOL FindClose(HANDLE); 
     1715    BOOL FindCloseChangeNotification(HANDLE); 
     1716    HANDLE FindFirstChangeNotificationA(LPCSTR, BOOL, DWORD); 
     1717    HANDLE FindFirstChangeNotificationW(LPCWSTR, BOOL, DWORD); 
     1718    HANDLE FindFirstFileA(LPCSTR, LPWIN32_FIND_DATAA); 
     1719    HANDLE FindFirstFileW(LPCWSTR, LPWIN32_FIND_DATAW); 
     1720    HANDLE FindFirstFileExA(LPCSTR, FINDEX_INFO_LEVELS, PVOID, FINDEX_SEARCH_OPS, PVOID, DWORD); 
     1721    HANDLE FindFirstFileExW(LPCWSTR, FINDEX_INFO_LEVELS, PVOID, FINDEX_SEARCH_OPS, PVOID, DWORD); 
     1722    BOOL FindFirstFreeAce(PACL, PVOID*); 
     1723    BOOL FindNextChangeNotification(HANDLE); 
     1724    BOOL FindNextFileA(HANDLE, LPWIN32_FIND_DATAA); 
     1725    BOOL FindNextFileW(HANDLE, LPWIN32_FIND_DATAW); 
     1726    HRSRC FindResourceA(HMODULE, LPCSTR, LPCSTR); 
     1727    HRSRC FindResourceW(HINSTANCE, LPCWSTR, LPCWSTR); 
     1728    HRSRC FindResourceExA(HINSTANCE, LPCSTR, LPCSTR, WORD); 
     1729    HRSRC FindResourceExW(HINSTANCE, LPCWSTR, LPCWSTR, WORD); 
     1730    BOOL FlushFileBuffers(HANDLE); 
     1731    BOOL FlushInstructionCache(HANDLE, PCVOID, DWORD); 
     1732    BOOL FlushViewOfFile(PCVOID, DWORD); 
     1733    DWORD FormatMessageA(DWORD, PCVOID, DWORD, DWORD, LPSTR, DWORD, va_list*); 
     1734    DWORD FormatMessageW(DWORD, PCVOID, DWORD, DWORD, LPWSTR, DWORD, va_list*); 
     1735    BOOL FreeEnvironmentStringsA(LPSTR); 
     1736    BOOL FreeEnvironmentStringsW(LPWSTR); 
     1737    BOOL FreeLibrary(HMODULE); 
     1738    void FreeLibraryAndExitThread(HMODULE, DWORD); // never returns 
     1739    BOOL FreeResource(HGLOBAL); 
     1740    PVOID FreeSid(PSID); 
     1741    BOOL GetAce(PACL, DWORD, LPVOID*); 
     1742    BOOL GetAclInformation(PACL, PVOID, DWORD, ACL_INFORMATION_CLASS); 
     1743    UINT GetAtomNameA(ATOM, LPSTR, int); 
     1744    UINT GetAtomNameW(ATOM, LPWSTR, int); 
     1745    BOOL GetBinaryTypeA(LPCSTR, PDWORD); 
     1746    BOOL GetBinaryTypeW(LPCWSTR, PDWORD); 
     1747    LPSTR GetCommandLineA(); 
     1748    LPWSTR GetCommandLineW(); 
     1749    BOOL GetCommConfig(HANDLE, LPCOMMCONFIG, PDWORD); 
     1750    BOOL GetCommMask(HANDLE, PDWORD); 
     1751    BOOL GetCommModemStatus(HANDLE, PDWORD); 
     1752    BOOL GetCommProperties(HANDLE, LPCOMMPROP); 
     1753    BOOL GetCommState(HANDLE, LPDCB); 
     1754    BOOL GetCommTimeouts(HANDLE, LPCOMMTIMEOUTS); 
     1755    DWORD GetCompressedFileSizeA(LPCSTR, PDWORD); 
     1756    DWORD GetCompressedFileSizeW(LPCWSTR, PDWORD); 
     1757    BOOL GetComputerNameA(LPSTR, PDWORD); 
     1758    BOOL GetComputerNameW(LPWSTR, PDWORD); 
     1759    DWORD GetCurrentDirectoryA(DWORD, LPSTR); 
     1760    DWORD GetCurrentDirectoryW(DWORD, LPWSTR); 
     1761    BOOL GetCurrentHwProfileA(LPHW_PROFILE_INFOA); 
     1762    BOOL GetCurrentHwProfileW(LPHW_PROFILE_INFOW); 
     1763    HANDLE GetCurrentProcess(); 
     1764    DWORD GetCurrentProcessId(); 
     1765    HANDLE GetCurrentThread(); 
     1766    DWORD GetCurrentThreadId(); 
     1767 
     1768    alias GetTickCount GetCurrentTime; 
     1769 
     1770    BOOL GetDefaultCommConfigA(LPCSTR, LPCOMMCONFIG, PDWORD); 
     1771    BOOL GetDefaultCommConfigW(LPCWSTR, LPCOMMCONFIG, PDWORD); 
     1772    BOOL GetDiskFreeSpaceA(LPCSTR, PDWORD, PDWORD, PDWORD, PDWORD); 
     1773    BOOL GetDiskFreeSpaceW(LPCWSTR, PDWORD, PDWORD, PDWORD, PDWORD); 
     1774    BOOL GetDiskFreeSpaceExA(LPCSTR, PULARGE_INTEGER, PULARGE_INTEGER, PULARGE_INTEGER); 
     1775    BOOL GetDiskFreeSpaceExW(LPCWSTR, PULARGE_INTEGER, PULARGE_INTEGER, PULARGE_INTEGER); 
     1776    UINT GetDriveTypeA(LPCSTR); 
     1777    UINT GetDriveTypeW(LPCWSTR); 
     1778    LPSTR GetEnvironmentStrings(); 
     1779    LPSTR GetEnvironmentStringsA(); 
     1780    LPWSTR GetEnvironmentStringsW(); 
     1781    DWORD GetEnvironmentVariableA(LPCSTR, LPSTR, DWORD); 
     1782    DWORD GetEnvironmentVariableW(LPCWSTR, LPWSTR, DWORD); 
     1783    BOOL GetExitCodeProcess(HANDLE, PDWORD); 
     1784    BOOL GetExitCodeThread(HANDLE, PDWORD); 
     1785    DWORD GetFileAttributesA(LPCSTR); 
     1786    DWORD GetFileAttributesW(LPCWSTR); 
     1787    BOOL GetFileAttributesExA(LPCSTR, GET_FILEEX_INFO_LEVELS, PVOID); 
     1788    BOOL GetFileAttributesExW(LPCWSTR, GET_FILEEX_INFO_LEVELS, PVOID); 
     1789    BOOL GetFileInformationByHandle(HANDLE, LPBY_HANDLE_FILE_INFORMATION); 
     1790    BOOL GetFileSecurityA(LPCSTR, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR, DWORD, PDWORD); 
     1791    BOOL GetFileSecurityW(LPCWSTR, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR, DWORD, PDWORD); 
     1792    DWORD GetFileSize(HANDLE, PDWORD); 
     1793    BOOL GetFileTime(HANDLE, LPFILETIME, LPFILETIME, LPFILETIME); 
     1794    DWORD GetFileType(HANDLE); 
     1795    DWORD GetFullPathNameA(LPCSTR, DWORD, LPSTR, LPSTR*); 
     1796    DWORD GetFullPathNameW(LPCWSTR, DWORD, LPWSTR, LPWSTR*); 
     1797    BOOL GetHandleInformation(HANDLE, PDWORD); 
     1798    BOOL GetKernelObjectSecurity(HANDLE, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR, DWORD, PDWORD); 
     1799    DWORD GetLastError(); 
     1800    DWORD GetLengthSid(PSID); 
     1801    void GetLocalTime(LPSYSTEMTIME); 
     1802    DWORD GetLogicalDrives(); 
     1803    DWORD GetLogicalDriveStringsA(DWORD, LPSTR); 
     1804    DWORD GetLogicalDriveStringsW(DWORD, LPWSTR); 
     1805    BOOL GetMailslotInfo(HANDLE, PDWORD, PDWORD, PDWORD, PDWORD); 
     1806    DWORD GetModuleFileNameA(HINSTANCE, LPSTR, DWORD); 
     1807    DWORD GetModuleFileNameW(HINSTANCE, LPWSTR, DWORD); 
     1808    HMODULE GetModuleHandleA(LPCSTR); 
     1809    HMODULE GetModuleHandleW(LPCWSTR); 
     1810    BOOL GetNamedPipeHandleStateA(HANDLE, PDWORD, PDWORD, PDWORD, PDWORD, LPSTR, DWORD); 
     1811    BOOL GetNamedPipeHandleStateW(HANDLE, PDWORD, PDWORD, PDWORD, PDWORD, LPWSTR, DWORD); 
     1812    BOOL GetNamedPipeInfo(HANDLE, PDWORD, PDWORD, PDWORD, PDWORD); 
     1813    BOOL GetNumberOfEventLogRecords(HANDLE, PDWORD); 
     1814    BOOL GetOldestEventLogRecord(HANDLE, PDWORD); 
     1815    BOOL GetOverlappedResult(HANDLE, LPOVERLAPPED, PDWORD, BOOL); 
     1816    DWORD GetPriorityClass(HANDLE); 
     1817    BOOL GetPrivateObjectSecurity(PSECURITY_DESCRIPTOR, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR, DWORD, PDWORD); 
     1818    UINT GetPrivateProfileIntA(LPCSTR, LPCSTR, INT, LPCSTR); 
     1819    UINT GetPrivateProfileIntW(LPCWSTR, LPCWSTR, INT, LPCWSTR); 
     1820    DWORD GetPrivateProfileSectionA(LPCSTR, LPSTR, DWORD, LPCSTR); 
     1821    DWORD GetPrivateProfileSectionW(LPCWSTR, LPWSTR, DWORD, LPCWSTR); 
     1822    DWORD GetPrivateProfileSectionNamesA(LPSTR, DWORD, LPCSTR); 
     1823    DWORD GetPrivateProfileSectionNamesW(LPWSTR, DWORD, LPCWSTR); 
     1824    DWORD GetPrivateProfileStringA(LPCSTR, LPCSTR, LPCSTR, LPSTR, DWORD, LPCSTR); 
     1825    DWORD GetPrivateProfileStringW(LPCWSTR, LPCWSTR, LPCWSTR, LPWSTR, DWORD, LPCWSTR); 
     1826    BOOL GetPrivateProfileStructA(LPCSTR, LPCSTR, LPVOID, UINT, LPCSTR); 
     1827    BOOL GetPrivateProfileStructW(LPCWSTR, LPCWSTR, LPVOID, UINT, LPCWSTR); 
     1828    FARPROC GetProcAddress(HINSTANCE, LPCSTR); 
     1829    BOOL GetProcessAffinityMask(HANDLE, PDWORD, PDWORD); 
     1830    HANDLE GetProcessHeap(); 
     1831    DWORD GetProcessHeaps(DWORD, PHANDLE); 
     1832    BOOL GetProcessPriorityBoost(HANDLE, PBOOL); 
     1833    BOOL GetProcessShutdownParameters(PDWORD, PDWORD); 
     1834    BOOL GetProcessTimes(HANDLE, LPFILETIME, LPFILETIME, LPFILETIME, LPFILETIME); 
     1835    DWORD GetProcessVersion(DWORD); 
     1836    HWINSTA GetProcessWindowStation(); 
     1837    BOOL GetProcessWorkingSetSize(HANDLE, PSIZE_T, PSIZE_T); 
     1838    UINT GetProfileIntA(LPCSTR, LPCSTR, INT); 
     1839    UINT GetProfileIntW(LPCWSTR, LPCWSTR, INT); 
     1840    DWORD GetProfileSectionA(LPCSTR, LPSTR, DWORD); 
     1841    DWORD GetProfileSectionW(LPCWSTR, LPWSTR, DWORD); 
     1842    DWORD GetProfileStringA(LPCSTR, LPCSTR, LPCSTR, LPSTR, DWORD); 
     1843    DWORD GetProfileStringW(LPCWSTR, LPCWSTR, LPCWSTR, LPWSTR, DWORD); 
     1844    BOOL GetQueuedCompletionStatus(HANDLE, PDWORD, PDWORD, LPOVERLAPPED*, DWORD); 
     1845    BOOL GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR_CONTROL, PDWORD); 
     1846    BOOL GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR, LPBOOL, PACL*, LPBOOL); 
     1847    BOOL GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR, PSID*, LPBOOL); 
     1848    DWORD GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR); 
     1849    BOOL GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR, PSID*, LPBOOL); 
     1850    BOOL GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR, LPBOOL, PACL*, LPBOOL); 
     1851    DWORD GetShortPathNameA(LPCSTR, LPSTR, DWORD); 
     1852    DWORD GetShortPathNameW(LPCWSTR, LPWSTR, DWORD); 
     1853    PSID_IDENTIFIER_AUTHORITY GetSidIdentifierAuthority(PSID); 
     1854    DWORD GetSidLengthRequired(UCHAR); 
     1855    PDWORD GetSidSubAuthority(PSID, DWORD); 
     1856    PUCHAR GetSidSubAuthorityCount(PSID); 
     1857    VOID GetStartupInfoA(LPSTARTUPINFOA); 
     1858    VOID GetStartupInfoW(LPSTARTUPINFOW); 
     1859    HANDLE GetStdHandle(DWORD); 
     1860    UINT GetSystemDirectoryA(LPSTR, UINT); 
     1861    UINT GetSystemDirectoryW(LPWSTR, UINT); 
     1862    VOID GetSystemInfo(LPSYSTEM_INFO); 
     1863    BOOL GetSystemPowerStatus(LPSYSTEM_POWER_STATUS); 
     1864    VOID GetSystemTime(LPSYSTEMTIME); 
     1865    BOOL GetSystemTimeAdjustment(PDWORD, PDWORD, PBOOL); 
     1866    void GetSystemTimeAsFileTime(LPFILETIME); 
     1867    DWORD GetTapeParameters(HANDLE, DWORD, PDWORD, PVOID); 
     1868    DWORD GetTapePosition(HANDLE, DWORD, PDWORD, PDWORD, PDWORD); 
     1869    DWORD GetTapeStatus(HANDLE); 
     1870    UINT GetTempFileNameA(LPCSTR, LPCSTR, UINT, LPSTR); 
     1871    UINT GetTempFileNameW(LPCWSTR, LPCWSTR, UINT, LPWSTR); 
     1872    DWORD GetTempPathA(DWORD, LPSTR); 
     1873    DWORD GetTempPathW(DWORD, LPWSTR); 
     1874    BOOL GetThreadContext(HANDLE, LPCONTEXT); 
     1875    int GetThreadPriority(HANDLE); 
     1876    BOOL GetThreadPriorityBoost(HANDLE, PBOOL); 
     1877    BOOL GetThreadSelectorEntry(HANDLE, DWORD, LPLDT_ENTRY); 
     1878    BOOL GetThreadTimes(HANDLE, LPFILETIME, LPFILETIME, LPFILETIME, LPFILETIME); 
     1879    DWORD GetTickCount(); 
     1880    DWORD GetTimeZoneInformation(LPTIME_ZONE_INFORMATION); 
     1881    BOOL GetTokenInformation(HANDLE, TOKEN_INFORMATION_CLASS, PVOID, DWORD, PDWORD); 
     1882    BOOL GetUserNameA (LPSTR, PDWORD); 
     1883    BOOL GetUserNameW(LPWSTR, PDWORD); 
     1884    DWORD GetVersion(); 
     1885    BOOL GetVersionExA(LPOSVERSIONINFOA); 
     1886    BOOL GetVersionExW(LPOSVERSIONINFOW); 
     1887    BOOL GetVolumeInformationA(LPCSTR, LPSTR, DWORD, PDWORD, PDWORD, PDWORD, LPSTR, DWORD); 
     1888    BOOL GetVolumeInformationW(LPCWSTR, LPWSTR, DWORD, PDWORD, PDWORD, PDWORD, LPWSTR, DWORD); 
     1889    UINT GetWindowsDirectoryA(LPSTR, UINT); 
     1890    UINT GetWindowsDirectoryW(LPWSTR, UINT); 
     1891    DWORD GetWindowThreadProcessId(HWND, PDWORD); 
     1892    UINT GetWriteWatch(DWORD, PVOID, SIZE_T, PVOID*, PULONG_PTR, PULONG); 
     1893    ATOM GlobalAddAtomA(LPCSTR); 
     1894    ATOM GlobalAddAtomW( LPCWSTR); 
     1895    HGLOBAL GlobalAlloc(UINT, DWORD); 
     1896    ATOM GlobalDeleteAtom(ATOM); 
     1897    HGLOBAL GlobalDiscard(HGLOBAL); 
     1898    ATOM GlobalFindAtomA(LPCSTR); 
     1899    ATOM GlobalFindAtomW(LPCWSTR); 
     1900    HGLOBAL GlobalFree(HGLOBAL); 
     1901    UINT GlobalGetAtomNameA(ATOM, LPSTR, int); 
     1902    UINT GlobalGetAtomNameW(ATOM, LPWSTR, int); 
     1903    HGLOBAL GlobalHandle(PCVOID); 
     1904    LPVOID GlobalLock(HGLOBAL); 
     1905    VOID GlobalMemoryStatus(LPMEMORYSTATUS); 
     1906    HGLOBAL GlobalReAlloc(HGLOBAL, DWORD, UINT); 
     1907    DWORD GlobalSize(HGLOBAL); 
     1908    BOOL GlobalUnlock(HGLOBAL); 
     1909 
     1910    bool HasOverlappedIoCompleted(LPOVERLAPPED lpOverlapped) { 
     1911        return lpOverlapped.Internal != STATUS_PENDING; 
     1912    } 
     1913 
     1914    PVOID HeapAlloc(HANDLE, DWORD, DWORD); 
     1915    SIZE_T HeapCompact(HANDLE, DWORD); 
     1916    HANDLE HeapCreate(DWORD, DWORD, DWORD); 
     1917    BOOL HeapDestroy(HANDLE); 
     1918    BOOL HeapFree(HANDLE, DWORD, PVOID); 
     1919    BOOL HeapLock(HANDLE); 
     1920    PVOID HeapReAlloc(HANDLE, DWORD, PVOID, DWORD); 
     1921    DWORD HeapSize(HANDLE, DWORD, PCVOID); 
     1922    BOOL HeapUnlock(HANDLE); 
     1923    BOOL HeapValidate(HANDLE, DWORD, PCVOID); 
     1924    BOOL HeapWalk(HANDLE, LPPROCESS_HEAP_ENTRY); 
     1925    BOOL ImpersonateLoggedOnUser(HANDLE); 
     1926    BOOL ImpersonateNamedPipeClient(HANDLE); 
     1927    BOOL ImpersonateSelf(SECURITY_IMPERSONATION_LEVEL); 
     1928    BOOL InitAtomTable(DWORD); 
     1929    BOOL InitializeAcl(PACL, DWORD, DWORD); 
     1930    VOID InitializeCriticalSection(LPCRITICAL_SECTION); 
     1931    BOOL InitializeCriticalSectionAndSpinCount(LPCRITICAL_SECTION, DWORD); 
     1932    DWORD SetCriticalSectionSpinCount(LPCRITICAL_SECTION, DWORD); 
     1933    BOOL InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR, DWORD); 
     1934    BOOL InitializeSid (PSID, PSID_IDENTIFIER_AUTHORITY, BYTE); 
     1935    BOOL IsBadCodePtr(FARPROC); 
     1936    BOOL IsBadHugeReadPtr(PCVOID, UINT); 
     1937    BOOL IsBadHugeWritePtr(PVOID, UINT); 
     1938    BOOL IsBadReadPtr(PCVOID, UINT); 
     1939    BOOL IsBadStringPtrA(LPCSTR, UINT); 
     1940    BOOL IsBadStringPtrW(LPCWSTR, UINT); 
     1941    BOOL IsBadWritePtr(PVOID, UINT); 
     1942    BOOL IsDebuggerPresent(); 
     1943    BOOL IsProcessorFeaturePresent(DWORD); 
     1944    BOOL IsSystemResumeAutomatic(); 
     1945    BOOL IsTextUnicode(PCVOID, int, LPINT); 
     1946    BOOL IsValidAcl(PACL); 
     1947    BOOL IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR); 
     1948    BOOL IsValidSid(PSID); 
     1949    void LeaveCriticalSection(LPCRITICAL_SECTION); 
     1950    HINSTANCE LoadLibraryA(LPCSTR); 
     1951    HINSTANCE LoadLibraryExA(LPCSTR, HANDLE, DWORD); 
     1952    HINSTANCE LoadLibraryExW(LPCWSTR, HANDLE, DWORD); 
     1953    HINSTANCE LoadLibraryW(LPCWSTR); 
     1954    DWORD LoadModule(LPCSTR, PVOID); 
     1955    HGLOBAL LoadResource(HINSTANCE, HRSRC); 
     1956    HLOCAL LocalAlloc(UINT, SIZE_T); 
     1957    HLOCAL LocalDiscard(HLOCAL); 
     1958    BOOL LocalFileTimeToFileTime(FILETIME* , LPFILETIME); 
     1959    HLOCAL LocalFree(HLOCAL); 
     1960    HLOCAL LocalHandle(LPCVOID); 
     1961    PVOID LocalLock(HLOCAL); 
     1962    HLOCAL LocalReAlloc(HLOCAL, SIZE_T, UINT); 
     1963    UINT LocalSize(HLOCAL); 
     1964    BOOL LocalUnlock(HLOCAL); 
     1965    BOOL LockFile(HANDLE, DWORD, DWORD, DWORD, DWORD); 
     1966    BOOL LockFileEx(HANDLE, DWORD, DWORD, DWORD, DWORD, LPOVERLAPPED); 
     1967    PVOID LockResource(HGLOBAL); 
     1968    BOOL LogonUserA(LPSTR, LPSTR, LPSTR, DWORD, DWORD, PHANDLE); 
     1969    BOOL LogonUserW(LPWSTR, LPWSTR, LPWSTR, DWORD, DWORD, PHANDLE); 
     1970    BOOL LookupAccountNameA(LPCSTR, LPCSTR, PSID, PDWORD, LPSTR, PDWORD, PSID_NAME_USE); 
     1971    BOOL LookupAccountNameW(LPCWSTR, LPCWSTR, PSID, PDWORD, LPWSTR, PDWORD, PSID_NAME_USE); 
     1972    BOOL LookupAccountSidA(LPCSTR, PSID, LPSTR, PDWORD, LPSTR, PDWORD, PSID_NAME_USE); 
     1973    BOOL LookupAccountSidW(LPCWSTR, PSID, LPWSTR, PDWORD, LPWSTR, PDWORD, PSID_NAME_USE); 
     1974    BOOL LookupPrivilegeDisplayNameA(LPCSTR, LPCSTR, LPSTR, PDWORD, PDWORD); 
     1975    BOOL LookupPrivilegeDisplayNameW(LPCWSTR, LPCWSTR, LPWSTR, PDWORD, PDWORD); 
     1976    BOOL LookupPrivilegeNameA(LPCSTR, PLUID, LPSTR, PDWORD); 
     1977    BOOL LookupPrivilegeNameW(LPCWSTR, PLUID, LPWSTR, PDWORD); 
     1978    BOOL LookupPrivilegeValueA(LPCSTR, LPCSTR, PLUID); 
     1979    BOOL LookupPrivilegeValueW(LPCWSTR, LPCWSTR, PLUID); 
     1980 
     1981    LPSTR lstrcatA(LPSTR, LPCSTR); 
     1982    LPWSTR lstrcatW(LPWSTR, LPCWSTR); 
     1983    int lstrcmpA(LPCSTR, LPCSTR); 
     1984    int lstrcmpiA(LPCSTR, LPCSTR); 
     1985    int lstrcmpiW( LPCWSTR, LPCWSTR); 
     1986    int lstrcmpW(LPCWSTR, LPCWSTR); 
     1987    LPSTR lstrcpyA(LPSTR, LPCSTR); 
     1988    LPSTR lstrcpynA(LPSTR, LPCSTR, int); 
     1989    LPWSTR lstrcpynW(LPWSTR, LPCWSTR, int); 
     1990    LPWSTR lstrcpyW(LPWSTR, LPCWSTR); 
     1991    int lstrlenA(LPCSTR); 
     1992    int lstrlenW(LPCWSTR); 
     1993 
     1994    BOOL MakeAbsoluteSD(PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, PDWORD, PACL, PDWORD, PACL, PDWORD, PSID, PDWORD, PSID, PDWORD); 
     1995    BOOL MakeSelfRelativeSD(PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, PDWORD); 
     1996    VOID MapGenericMask(PDWORD, PGENERIC_MAPPING); 
     1997    PVOID MapViewOfFile(HANDLE, DWORD, DWORD, DWORD, DWORD); 
     1998    PVOID MapViewOfFileEx(HANDLE, DWORD, DWORD, DWORD, DWORD, PVOID); 
     1999    BOOL MoveFileA(LPCSTR, LPCSTR); 
     2000    BOOL MoveFileExA(LPCSTR, LPCSTR, DWORD); 
     2001    BOOL MoveFileExW(LPCWSTR, LPCWSTR, DWORD); 
     2002    BOOL MoveFileW(LPCWSTR, LPCWSTR); 
     2003    int MulDiv(int, int, int); 
     2004    BOOL NotifyChangeEventLog(HANDLE, HANDLE); 
     2005    BOOL ObjectCloseAuditAlarmA(LPCSTR, PVOID, BOOL); 
     2006    BOOL ObjectCloseAuditAlarmW(LPCWSTR, PVOID, BOOL); 
     2007    BOOL ObjectDeleteAuditAlarmA(LPCSTR, PVOID, BOOL); 
     2008    BOOL ObjectDeleteAuditAlarmW(LPCWSTR, PVOID, BOOL); 
     2009    BOOL ObjectOpenAuditAlarmA(LPCSTR, PVOID, LPSTR, LPSTR, PSECURITY_DESCRIPTOR, HANDLE, DWORD, DWORD, PPRIVILEGE_SET, BOOL, BOOL, PBOOL); 
     2010    BOOL ObjectOpenAuditAlarmW(LPCWSTR, PVOID, LPWSTR, LPWSTR, PSECURITY_DESCRIPTOR, HANDLE, DWORD, DWORD, PPRIVILEGE_SET, BOOL, BOOL, PBOOL); 
     2011    BOOL ObjectPrivilegeAuditAlarmA(LPCSTR, PVOID, HANDLE, DWORD, PPRIVILEGE_SET, BOOL); 
     2012    BOOL ObjectPrivilegeAuditAlarmW(LPCWSTR, PVOID, HANDLE, DWORD, PPRIVILEGE_SET, BOOL); 
     2013    HANDLE OpenBackupEventLogA(LPCSTR, LPCSTR); 
     2014    HANDLE OpenBackupEventLogW(LPCWSTR, LPCWSTR); 
     2015    HANDLE OpenEventA(DWORD, BOOL, LPCSTR); 
     2016    HANDLE OpenEventLogA (LPCSTR, LPCSTR); 
     2017    HANDLE OpenEventLogW(LPCWSTR, LPCWSTR); 
     2018    HANDLE OpenEventW(DWORD, BOOL, LPCWSTR); 
     2019    deprecated HFILE OpenFile(LPCSTR, LPOFSTRUCT, UINT); 
     2020    HANDLE OpenFileMappingA(DWORD, BOOL, LPCSTR); 
     2021    HANDLE OpenFileMappingW(DWORD, BOOL, LPCWSTR); 
     2022    HANDLE OpenMutexA(DWORD, BOOL, LPCSTR); 
     2023    HANDLE OpenMutexW(DWORD, BOOL, LPCWSTR); 
     2024    HANDLE OpenProcess(DWORD, BOOL, DWORD); 
     2025    BOOL OpenProcessToken(HANDLE, DWORD, PHANDLE); 
     2026    HANDLE OpenSemaphoreA(DWORD, BOOL, LPCSTR); 
     2027    HANDLE OpenSemaphoreW(DWORD, BOOL, LPCWSTR); 
     2028    BOOL OpenThreadToken(HANDLE, DWORD, BOOL, PHANDLE); 
     2029    HANDLE OpenWaitableTimerA(DWORD, BOOL, LPCSTR); 
     2030    HANDLE OpenWaitableTimerW(DWORD, BOOL, LPCWSTR); 
     2031    void OutputDebugStringA(LPCSTR); 
     2032    void OutputDebugStringW(LPCWSTR); 
     2033    BOOL PeekNamedPipe(HANDLE, PVOID, DWORD, PDWORD, PDWORD, PDWORD); 
     2034    BOOL PostQueuedCompletionStatus(HANDLE, DWORD, DWORD, LPOVERLAPPED); 
     2035    DWORD PrepareTape(HANDLE, DWORD, BOOL); 
     2036    BOOL PrivilegeCheck (HANDLE, PPRIVILEGE_SET, PBOOL); 
     2037    BOOL PrivilegedServiceAuditAlarmA(LPCSTR, LPCSTR, HANDLE, PPRIVILEGE_SET, BOOL); 
     2038    BOOL PrivilegedServiceAuditAlarmW(LPCWSTR, LPCWSTR, HANDLE, PPRIVILEGE_SET, BOOL); 
     2039    BOOL PulseEvent(HANDLE); 
     2040    BOOL PurgeComm(HANDLE, DWORD); 
     2041    DWORD QueryDosDeviceA(LPCSTR, LPSTR, DWORD); 
     2042    DWORD QueryDosDeviceW(LPCWSTR, LPWSTR, DWORD); 
     2043    BOOL QueryPerformanceCounter(PLARGE_INTEGER); 
     2044    BOOL QueryPerformanceFrequency(PLARGE_INTEGER); 
     2045    DWORD QueueUserAPC(PAPCFUNC, HANDLE, DWORD); 
     2046    void RaiseException(DWORD, DWORD, DWORD, DWORD*); 
     2047    BOOL ReadDirectoryChangesW(HANDLE, PVOID, DWORD, BOOL, DWORD, PDWORD, LPOVERLAPPED, LPOVERLAPPED_COMPLETION_ROUTINE); 
     2048    BOOL ReadEventLogA(HANDLE, DWORD, DWORD, PVOID, DWORD, DWORD* , DWORD* ); 
     2049    BOOL ReadEventLogW(HANDLE, DWORD, DWORD, PVOID, DWORD, DWORD* , DWORD* ); 
     2050    BOOL ReadFile(HANDLE, PVOID, DWORD, PDWORD, LPOVERLAPPED); 
     2051    BOOL ReadFileEx(HANDLE, PVOID, DWORD, LPOVERLAPPED, LPOVERLAPPED_COMPLETION_ROUTINE); 
     2052    BOOL ReadFileScatter(HANDLE, FILE_SEGMENT_ELEMENT*, DWORD, LPDWORD, LPOVERLAPPED); 
     2053    BOOL ReadProcessMemory(HANDLE, PCVOID, PVOID, DWORD, PDWORD); 
     2054    HANDLE RegisterEventSourceA (LPCSTR, LPCSTR); 
     2055    HANDLE RegisterEventSourceW(LPCWSTR, LPCWSTR); 
     2056    BOOL ReleaseMutex(HANDLE); 
     2057    BOOL ReleaseSemaphore(HANDLE, LONG, LPLONG); 
     2058    BOOL RemoveDirectoryA(LPCSTR); 
     2059    BOOL RemoveDirectoryW(LPCWSTR); 
     2060    BOOL ReportEventA(HANDLE, WORD, WORD, DWORD, PSID, WORD, DWORD, LPCSTR*, PVOID); 
     2061    BOOL ReportEventW(HANDLE, WORD, WORD, DWORD, PSID, WORD, DWORD, LPCWSTR*, PVOID); 
     2062    BOOL ResetEvent(HANDLE); 
     2063    UINT ResetWriteWatch(LPVOID, SIZE_T); 
     2064    DWORD ResumeThread(HANDLE); 
     2065    BOOL RevertToSelf(); 
     2066    DWORD SearchPathA(LPCSTR, LPCSTR, LPCSTR, DWORD, LPSTR, LPSTR*); 
     2067    DWORD SearchPathW(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, LPWSTR, LPWSTR*); 
     2068    BOOL SetAclInformation(PACL, PVOID, DWORD, ACL_INFORMATION_CLASS); 
     2069    BOOL SetCommBreak(HANDLE); 
     2070    BOOL SetCommConfig(HANDLE, LPCOMMCONFIG, DWORD); 
     2071    BOOL SetCommMask(HANDLE, DWORD); 
     2072    BOOL SetCommState(HANDLE, LPDCB); 
     2073    BOOL SetCommTimeouts(HANDLE, LPCOMMTIMEOUTS); 
     2074    BOOL SetComputerNameA(LPCSTR); 
     2075    BOOL SetComputerNameW(LPCWSTR); 
     2076    BOOL SetCurrentDirectoryA(LPCSTR); 
     2077    BOOL SetCurrentDirectoryW(LPCWSTR); 
     2078    BOOL SetDefaultCommConfigA(LPCSTR, LPCOMMCONFIG, DWORD); 
     2079    BOOL SetDefaultCommConfigW(LPCWSTR, LPCOMMCONFIG, DWORD); 
     2080    BOOL SetEndOfFile(HANDLE); 
     2081    BOOL SetEnvironmentVariableA(LPCSTR, LPCSTR); 
     2082    BOOL SetEnvironmentVariableW(LPCWSTR, LPCWSTR); 
     2083    UINT SetErrorMode(UINT); 
     2084    BOOL SetEvent(HANDLE); 
     2085    VOID SetFileApisToANSI(); 
     2086    VOID SetFileApisToOEM(); 
     2087    BOOL SetFileAttributesA(LPCSTR, DWORD); 
     2088    BOOL SetFileAttributesW(LPCWSTR, DWORD); 
     2089    DWORD SetFilePointer(HANDLE, LONG, PLONG, DWORD); 
     2090    BOOL SetFilePointerEx(HANDLE, LARGE_INTEGER, PLARGE_INTEGER, DWORD); 
     2091    BOOL SetFileSecurityA(LPCSTR, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR); 
     2092    BOOL SetFileSecurityW(LPCWSTR, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR); 
     2093    BOOL SetFileTime(HANDLE, FILETIME*, FILETIME*, FILETIME*); 
     2094    UINT SetHandleCount(UINT); 
     2095    BOOL SetHandleInformation(HANDLE, DWORD, DWORD); 
     2096    BOOL SetKernelObjectSecurity(HANDLE, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR); 
     2097    void SetLastError(DWORD); 
     2098    void SetLastErrorEx(DWORD, DWORD); 
     2099    BOOL SetLocalTime( SYSTEMTIME*); 
     2100    BOOL SetMailslotInfo(HANDLE, DWORD); 
     2101    BOOL SetNamedPipeHandleState(HANDLE, PDWORD, PDWORD, PDWORD); 
     2102    BOOL SetPriorityClass(HANDLE, DWORD); 
     2103    BOOL SetPrivateObjectSecurity(SECURITY_INFORMATION, PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR* , PGENERIC_MAPPING, HANDLE); 
     2104    BOOL SetProcessAffinityMask(HANDLE, DWORD); 
     2105    BOOL SetProcessPriorityBoost(HANDLE, BOOL); 
     2106    BOOL SetProcessShutdownParameters(DWORD, DWORD); 
     2107    BOOL SetProcessWorkingSetSize(HANDLE, DWORD, DWORD); 
     2108    BOOL SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR, SECURITY_DESCRIPTOR_CONTROL, SECURITY_DESCRIPTOR_CONTROL); 
     2109    BOOL SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR, BOOL, PACL, BOOL); 
     2110    BOOL SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR, PSID, BOOL); 
     2111    BOOL SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR, PSID, BOOL); 
     2112    BOOL SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR, BOOL, PACL, BOOL); 
     2113    BOOL SetStdHandle(DWORD, HANDLE); 
     2114    BOOL SetSystemPowerState(BOOL, BOOL); 
     2115    BOOL SetSystemTime( SYSTEMTIME*); 
     2116    BOOL SetSystemTimeAdjustment(DWORD, BOOL); 
     2117    DWORD SetTapeParameters(HANDLE, DWORD, PVOID); 
     2118    DWORD SetTapePosition(HANDLE, DWORD, DWORD, DWORD, DWORD, BOOL); 
     2119    DWORD SetThreadAffinityMask(HANDLE, DWORD); 
     2120    BOOL SetThreadContext(HANDLE, CONTEXT*); 
     2121    DWORD SetThreadIdealProcessor(HANDLE, DWORD); 
     2122    BOOL SetThreadPriority(HANDLE, int); 
     2123    BOOL SetThreadPriorityBoost(HANDLE, BOOL); 
     2124    BOOL SetThreadToken (PHANDLE, HANDLE); 
     2125    BOOL SetTimeZoneInformation( TIME_ZONE_INFORMATION* ); 
     2126    BOOL SetTokenInformation(HANDLE, TOKEN_INFORMATION_CLASS, PVOID, DWORD); 
     2127    LPTOP_LEVEL_EXCEPTION_FILTER SetUnhandledExceptionFilter(LPTOP_LEVEL_EXCEPTION_FILTER); 
     2128    BOOL SetupComm(HANDLE, DWORD, DWORD); 
     2129    BOOL SetVolumeLabelA(LPCSTR, LPCSTR); 
     2130    BOOL SetVolumeLabelW(LPCWSTR, LPCWSTR); 
     2131    BOOL SetWaitableTimer(HANDLE, LARGE_INTEGER*, LONG, PTIMERAPCROUTINE, PVOID, BOOL); 
     2132    DWORD SignalObjectAndWait(HANDLE, HANDLE, DWORD, BOOL); 
     2133    DWORD SizeofResource(HINSTANCE, HRSRC); 
     2134    void Sleep(DWORD); 
     2135    DWORD SleepEx(DWORD, BOOL); 
     2136    DWORD SuspendThread(HANDLE); 
     2137    void SwitchToFiber(PVOID); 
     2138    BOOL SwitchToThread(); 
     2139    BOOL SystemTimeToFileTime( SYSTEMTIME*, LPFILETIME); 
     2140    BOOL SystemTimeToTzSpecificLocalTime(LPTIME_ZONE_INFORMATION, LPSYSTEMTIME, LPSYSTEMTIME); 
     2141    BOOL TerminateProcess(HANDLE, UINT); 
     2142    BOOL TerminateThread(HANDLE, DWORD); 
     2143    DWORD TlsAlloc(); 
     2144    BOOL TlsFree(DWORD); 
     2145    PVOID TlsGetValue(DWORD); 
     2146    BOOL TlsSetValue(DWORD, PVOID); 
     2147    BOOL TransactNamedPipe(HANDLE, PVOID, DWORD, PVOID, DWORD, PDWORD, LPOVERLAPPED); 
     2148    BOOL TransmitCommChar(HANDLE, char); 
     2149    BOOL TryEnterCriticalSection(LPCRITICAL_SECTION); 
     2150    LONG UnhandledExceptionFilter(LPEXCEPTION_POINTERS); 
     2151    BOOL UnlockFile(HANDLE, DWORD, DWORD, DWORD, DWORD); 
     2152    BOOL UnlockFileEx(HANDLE, DWORD, DWORD, DWORD, LPOVERLAPPED); 
     2153    BOOL UnmapViewOfFile(PVOID); 
     2154    BOOL UpdateResourceA(HANDLE, LPCSTR, LPCSTR, WORD, PVOID, DWORD); 
     2155    BOOL UpdateResourceW(HANDLE, LPCWSTR, LPCWSTR, WORD, PVOID, DWORD); 
     2156    BOOL VerifyVersionInfoA(LPOSVERSIONINFOEXA, DWORD, DWORDLONG); 
     2157    BOOL VerifyVersionInfoW(LPOSVERSIONINFOEXW, DWORD, DWORDLONG); 
     2158    PVOID VirtualAlloc(PVOID, DWORD, DWORD, DWORD); 
     2159    PVOID VirtualAllocEx(HANDLE, PVOID, DWORD, DWORD, DWORD); 
     2160    BOOL VirtualFree(PVOID, DWORD, DWORD); 
     2161    BOOL VirtualFreeEx(HANDLE, PVOID, DWORD, DWORD); 
     2162    BOOL VirtualLock(PVOID, DWORD); 
     2163    BOOL VirtualProtect(PVOID, DWORD, DWORD, PDWORD); 
     2164    BOOL VirtualProtectEx(HANDLE, PVOID, DWORD, DWORD, PDWORD); 
     2165    DWORD VirtualQuery(LPCVOID, PMEMORY_BASIC_INFORMATION, DWORD); 
     2166    DWORD VirtualQueryEx(HANDLE, LPCVOID, PMEMORY_BASIC_INFORMATION, DWORD); 
     2167    BOOL VirtualUnlock(PVOID, DWORD); 
     2168    BOOL WaitCommEvent(HANDLE, PDWORD, LPOVERLAPPED); 
     2169    BOOL WaitForDebugEvent(LPDEBUG_EVENT, DWORD); 
     2170    DWORD WaitForMultipleObjects(DWORD, HANDLE*, BOOL, DWORD); 
     2171    DWORD WaitForMultipleObjectsEx(DWORD, HANDLE*, BOOL, DWORD, BOOL); 
     2172    DWORD WaitForSingleObject(HANDLE, DWORD); 
     2173    DWORD WaitForSingleObjectEx(HANDLE, DWORD, BOOL); 
     2174    BOOL WaitNamedPipeA(LPCSTR, DWORD); 
     2175    BOOL WaitNamedPipeW(LPCWSTR, DWORD); 
     2176    BOOL WinLoadTrustProvider(GUID*); 
     2177    BOOL WriteFile(HANDLE, PCVOID, DWORD, PDWORD, LPOVERLAPPED); 
     2178    BOOL WriteFileEx(HANDLE, PCVOID, DWORD, LPOVERLAPPED, LPOVERLAPPED_COMPLETION_ROUTINE); 
     2179    BOOL WriteFileGather(HANDLE, FILE_SEGMENT_ELEMENT*, DWORD, LPDWORD, LPOVERLAPPED); 
     2180    BOOL WritePrivateProfileSectionA(LPCSTR, LPCSTR, LPCSTR); 
     2181    BOOL WritePrivateProfileSectionW(LPCWSTR, LPCWSTR, LPCWSTR); 
     2182    BOOL WritePrivateProfileStringA(LPCSTR, LPCSTR, LPCSTR, LPCSTR); 
     2183    BOOL WritePrivateProfileStringW(LPCWSTR, LPCWSTR, LPCWSTR, LPCWSTR); 
     2184    BOOL WritePrivateProfileStructA(LPCSTR, LPCSTR, LPVOID, UINT, LPCSTR); 
     2185    BOOL WritePrivateProfileStructW(LPCWSTR, LPCWSTR, LPVOID, UINT, LPCWSTR); 
     2186    BOOL WriteProcessMemory(HANDLE, LPVOID, LPCVOID, SIZE_T, SIZE_T*); 
     2187    BOOL WriteProfileSectionA(LPCSTR, LPCSTR); 
     2188    BOOL WriteProfileSectionW(LPCWSTR, LPCWSTR); 
     2189    BOOL WriteProfileStringA(LPCSTR, LPCSTR, LPCSTR); 
     2190    BOOL WriteProfileStringW(LPCWSTR, LPCWSTR, LPCWSTR); 
     2191    DWORD WriteTapemark(HANDLE, DWORD, DWORD, BOOL); 
     2192 
     2193    // ------ 
     2194    // functions added in later Windows versions 
     2195 
     2196    static if (_WIN32_WINNT >= 0x0400) { 
     2197        LPVOID CreateFiberEx(SIZE_T, SIZE_T, DWORD, LPFIBER_START_ROUTINE, LPVOID); 
     2198        BOOL ConvertFiberToThread(); 
     2199    } 
     2200    static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
     2201        DWORD GetLongPathNameA(LPCSTR, LPSTR, DWORD); 
     2202        DWORD GetLongPathNameW(LPCWSTR, LPWSTR, DWORD); 
     2203        EXECUTION_STATE SetThreadExecutionState(EXECUTION_STATE); 
     2204    } 
     2205    static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490)) { 
     2206        HANDLE OpenThread(DWORD, BOOL, DWORD); 
     2207    } 
     2208 
     2209    static if (_WIN32_WINNT >= 0x0500) { 
     2210        BOOL AddAccessAllowedAceEx(PACL, DWORD, DWORD, DWORD, PSID); 
     2211        BOOL AddAccessDeniedAceEx(PACL, DWORD, DWORD, DWORD, PSID); 
     2212        PVOID AddVectoredExceptionHandler(ULONG, PVECTORED_EXCEPTION_HANDLER); 
     2213        BOOL CreateHardLinkA(LPCSTR, LPCSTR, LPSECURITY_ATTRIBUTES); 
     2214        BOOL CreateHardLinkW(LPCWSTR, LPCWSTR, LPSECURITY_ATTRIBUTES); 
     2215        HANDLE CreateJobObjectA(LPSECURITY_ATTRIBUTES, LPCSTR); 
     2216        HANDLE CreateJobObjectW(LPSECURITY_ATTRIBUTES, LPCWSTR); 
     2217        BOOL TerminateJobObject(HANDLE, UINT); 
     2218        BOOL AssignProcessToJobObject(HANDLE, HANDLE); 
     2219        BOOL DeleteTimerQueue(HANDLE); 
     2220        BOOL DeleteTimerQueueEx(HANDLE, HANDLE); 
     2221        BOOL DeleteTimerQueueTimer(HANDLE, HANDLE, HANDLE); 
     2222        BOOL DeleteVolumeMountPointA(LPCSTR); 
     2223        BOOL DeleteVolumeMountPointW(LPCWSTR); 
     2224        BOOL CreateProcessWithLogonW (LPCWSTR, LPCWSTR, LPCWSTR, DWORD, 
     2225                LPCWSTR, LPWSTR, DWORD, LPVOID, 
     2226                LPCWSTR, LPSTARTUPINFOW, 
     2227                LPPROCESS_INFORMATION); 
     2228        enum { 
     2229            LOGON_WITH_PROFILE=0x00000001, 
     2230            LOGON_NETCREDENTIALS_ONLY=0x00000002 
     2231        } 
     2232        HANDLE CreateTimerQueue(); 
     2233        BOOL CreateTimerQueueTimer(PHANDLE, HANDLE, WAITORTIMERCALLBACK, PVOID, DWORD, DWORD, ULONG); 
     2234        BOOL DnsHostnameToComputerNameA(LPCSTR, LPSTR, LPDWORD); 
     2235        BOOL DnsHostnameToComputerNameW(LPCWSTR, LPWSTR, LPDWORD); 
     2236        HANDLE FindFirstVolumeA(LPCSTR, DWORD); 
     2237        HANDLE FindFirstVolumeW(LPCWSTR, DWORD); 
     2238        HANDLE FindFirstVolumeMountPointA(LPSTR, LPSTR, DWORD); 
     2239        HANDLE FindFirstVolumeMountPointW(LPWSTR, LPWSTR, DWORD); 
     2240        BOOL FindNextVolumeA(HANDLE, LPCSTR, DWORD); 
     2241        BOOL FindNextVolumeW(HANDLE, LPWSTR, DWORD); 
     2242        BOOL FindNextVolumeMountPointA(HANDLE, LPSTR, DWORD); 
     2243        BOOL FindNextVolumeMountPointW(HANDLE, LPWSTR, DWORD); 
     2244        BOOL FindVolumeClose(HANDLE); 
     2245        BOOL FindVolumeMountPointClose(HANDLE); 
     2246        BOOL GetComputerNameExA(COMPUTER_NAME_FORMAT, LPSTR, LPDWORD); 
     2247        BOOL GetComputerNameExW(COMPUTER_NAME_FORMAT, LPWSTR, LPDWORD); 
     2248        BOOL GetFileSizeEx(HANDLE, PLARGE_INTEGER); 
     2249        BOOL GetModuleHandleExA(DWORD, LPCSTR, HMODULE*); 
     2250        BOOL GetModuleHandleExW(DWORD, LPCWSTR, HMODULE*); 
     2251        BOOL GetProcessIoCounters(HANDLE, PIO_COUNTERS); 
     2252        UINT GetSystemWindowsDirectoryA(LPSTR, UINT); 
     2253        UINT GetSystemWindowsDirectoryW(LPWSTR, UINT); 
     2254        BOOL GetVolumeNameForVolumeMountPointA(LPCSTR, LPSTR, DWORD); 
     2255        BOOL GetVolumeNameForVolumeMountPointW(LPCWSTR, LPWSTR, DWORD); 
     2256        BOOL GetVolumePathNameA(LPCSTR, LPSTR, DWORD); 
     2257        BOOL GetVolumePathNameW(LPCWSTR, LPWSTR, DWORD); 
     2258        BOOL GlobalMemoryStatusEx(LPMEMORYSTATUSEX); 
     2259        BOOL SetVolumeMountPointA(LPCSTR, LPCSTR); 
     2260        BOOL SetVolumeMountPointW(LPCWSTR, LPCWSTR); 
     2261        BOOL UnregisterWaitEx(HANDLE, HANDLE); 
     2262        BOOL AllocateUserPhysicalPages(HANDLE, PULONG_PTR, PULONG_PTR); 
     2263        BOOL FreeUserPhysicalPages(HANDLE, PULONG_PTR, PULONG_PTR); 
     2264        BOOL MapUserPhysicalPages(PVOID, ULONG_PTR, PULONG_PTR); 
     2265        BOOL MapUserPhysicalPagesScatter(PVOID*, ULONG_PTR, PULONG_PTR); 
     2266        BOOL ProcessIdToSessionId(DWORD, DWORD*); 
     2267        ULONG RemoveVectoredExceptionHandler(PVOID); 
     2268        BOOL ReplaceFileA(LPCSTR, LPCSTR, LPCSTR, DWORD, LPVOID, LPVOID); 
     2269        BOOL ReplaceFileW(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, LPVOID, LPVOID); 
     2270        BOOL SetComputerNameExA(COMPUTER_NAME_FORMAT, LPCSTR); 
     2271        BOOL SetComputerNameExW(COMPUTER_NAME_FORMAT, LPCWSTR); 
     2272    } 
     2273 
     2274    static if (_WIN32_WINNT >= 0x0501) { 
     2275        BOOL ActivateActCtx(HANDLE, ULONG_PTR*); 
     2276        void AddRefActCtx(HANDLE); 
     2277        BOOL CheckNameLegalDOS8Dot3A(LPCSTR, LPSTR, DWORD, PBOOL, PBOOL); 
     2278        BOOL CheckNameLegalDOS8Dot3W(LPCWSTR, LPSTR, DWORD, PBOOL, PBOOL); 
     2279        BOOL CheckRemoteDebuggerPresent(HANDLE, PBOOL); 
     2280        HANDLE CreateActCtxA(PCACTCTXA); 
     2281        HANDLE CreateActCtxW(PCACTCTXW); 
     2282        HANDLE CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE); 
     2283        BOOL DebugActiveProcessStop(DWORD); 
     2284        BOOL DebugBreakProcess(HANDLE); 
     2285        BOOL DebugSetProcessKillOnExit(BOOL); 
     2286        BOOL DeactivateActCtx(DWORD, ULONG_PTR); 
     2287        BOOL GetCurrentActCtx(HANDLE*); 
     2288        BOOL FindActCtxSectionGuid(DWORD, GUID*, ULONG, GUID*, PACTCTX_SECTION_KEYED_DATA); 
     2289        BOOL FindActCtxSectionStringA(DWORD, GUID*, ULONG, LPCSTR, PACTCTX_SECTION_KEYED_DATA); 
     2290        BOOL FindActCtxSectionStringW(DWORD, GUID*, ULONG, LPCWSTR, PACTCTX_SECTION_KEYED_DATA); 
     2291        VOID GetNativeSystemInfo(LPSYSTEM_INFO); 
     2292        BOOL GetSystemTimes(LPFILETIME, LPFILETIME, LPFILETIME); 
     2293        UINT GetSystemWow64DirectoryA(LPSTR, UINT); 
     2294        UINT GetSystemWow64DirectoryW(LPWSTR, UINT); 
     2295        BOOL GetVolumePathNamesForVolumeNameA(LPCSTR, LPSTR, DWORD, PDWORD); 
     2296        BOOL GetVolumePathNamesForVolumeNameW(LPCWSTR, LPWSTR, DWORD, PDWORD); 
     2297        BOOL HeapQueryInformation(HANDLE, HEAP_INFORMATION_CLASS, PVOID, SIZE_T, PSIZE_T); 
     2298        BOOL HeapSetInformation(HANDLE, HEAP_INFORMATION_CLASS, PVOID, SIZE_T); 
     2299        BOOL IsProcessInJob(HANDLE, HANDLE, PBOOL); 
     2300        BOOL IsWow64Process(HANDLE, PBOOL); 
     2301        BOOL QueryActCtxW(DWORD, HANDLE, PVOID, ULONG, PVOID, SIZE_T, SIZE_T*); 
     2302        BOOL QueryMemoryResourceNotification(HANDLE, PBOOL); 
     2303        void ReleaseActCtx(HANDLE); 
     2304        BOOL SetFileShortNameA(HANDLE, LPCSTR); 
     2305        BOOL SetFileShortNameW(HANDLE, LPCWSTR); 
     2306        BOOL SetFileValidData(HANDLE, LONGLONG); 
     2307        BOOL ZombifyActCtx(HANDLE); 
     2308    } 
     2309    static if (_WIN32_WINNT >= 0x0502) { 
     2310        DWORD GetFirmwareEnvironmentVariableA(LPCSTR, LPCSTR, PVOID, DWORD); 
     2311        DWORD GetFirmwareEnvironmentVariableW(LPCWSTR, LPCWSTR, PVOID, DWORD); 
     2312        DWORD GetDllDirectoryA(DWORD, LPSTR); 
     2313        DWORD GetDllDirectoryW(DWORD, LPWSTR); 
     2314        DWORD GetProcessId(HANDLE); 
     2315        BOOL GetProcessHandleCount(HANDLE, PDWORD); 
     2316        BOOL GetSystemRegistryQuota(PDWORD, PDWORD); 
     2317        BOOL GetThreadIOPendingFlag(HANDLE, PBOOL); 
     2318        BOOL SetDllDirectoryA(LPCSTR); 
     2319        BOOL SetDllDirectoryW(LPCWSTR); 
     2320        BOOL SetFirmwareEnvironmentVariableA(LPCSTR, LPCSTR, PVOID, DWORD); 
     2321        BOOL SetFirmwareEnvironmentVariableW(LPCWSTR, LPCWSTR, PVOID, DWORD); 
     2322    } 
     2323 
     2324    static if (_WIN32_WINNT >= 0x0510) { 
     2325        VOID RestoreLastError(DWORD); 
     2326    } 
    23322327} // extern(Windows) 
    23332328 
     
    23372332 
    23382333version(Unicode) { 
    2339 alias STARTUPINFOW STARTUPINFO; 
    2340 alias WIN32_FIND_DATAW WIN32_FIND_DATA; 
    2341 alias HW_PROFILE_INFOW HW_PROFILE_INFO; 
    2342 alias STARTUPINFO * LPSTARTUPINFO; 
    2343 alias WIN32_FIND_DATA * LPWIN32_FIND_DATA; 
    2344 alias HW_PROFILE_INFO *LPHW_PROFILE_INFO; 
    2345 alias AccessCheckAndAuditAlarmW AccessCheckAndAuditAlarm; 
    2346 alias AddAtomW AddAtom; 
    2347 alias BackupEventLogW BackupEventLog; 
    2348 alias BeginUpdateResourceW BeginUpdateResource; 
    2349 alias BuildCommDCBW BuildCommDCB; 
    2350 alias BuildCommDCBAndTimeoutsW BuildCommDCBAndTimeouts; 
    2351 alias CallNamedPipeW CallNamedPipe; 
    2352 alias ClearEventLogW ClearEventLog; 
    2353 alias CommConfigDialogW CommConfigDialog; 
    2354 alias CopyFileW CopyFile; 
    2355 alias CopyFileExW CopyFileEx; 
    2356 alias CreateDirectoryW CreateDirectory; 
    2357 alias CreateDirectoryExW CreateDirectoryEx; 
    2358 alias CreateEventW CreateEvent; 
    2359 alias CreateFileW CreateFile; 
    2360 alias CreateFileMappingW CreateFileMapping; 
    2361 alias CreateMailslotW CreateMailslot; 
    2362 alias CreateMutexW CreateMutex; 
    2363 alias CreateNamedPipeW CreateNamedPipe; 
    2364 alias CreateProcessW CreateProcess; 
    2365 alias CreateProcessAsUserW CreateProcessAsUser; 
    2366 alias CreateSemaphoreW CreateSemaphore; 
    2367 alias CreateWaitableTimerW CreateWaitableTimer; 
    2368 alias DefineDosDeviceW DefineDosDevice; 
    2369 alias DeleteFileW DeleteFile; 
    2370 alias EncryptFileW EncryptFile; 
    2371 alias EndUpdateResourceW EndUpdateResource; 
    2372 alias EnumResourceLanguagesW EnumResourceLanguages; 
    2373 alias EnumResourceNamesW EnumResourceNames; 
    2374 alias EnumResourceTypesW EnumResourceTypes; 
    2375 alias ExpandEnvironmentStringsW ExpandEnvironmentStrings; 
    2376 alias FatalAppExitW FatalAppExit; 
    2377 alias FileEncryptionStatusW FileEncryptionStatus; 
    2378 alias FindAtomW FindAtom; 
    2379 alias FindFirstChangeNotificationW FindFirstChangeNotification; 
    2380 alias FindFirstFileW FindFirstFile; 
    2381 alias FindFirstFileExW FindFirstFileEx; 
    2382 alias FindNextFileW FindNextFile; 
    2383 alias FindResourceW FindResource; 
    2384 alias FindResourceExW FindResourceEx; 
    2385 alias FormatMessageW FormatMessage; 
    2386 alias FreeEnvironmentStringsW FreeEnvironmentStrings; 
    2387 alias GetAtomNameW GetAtomName; 
    2388 alias GetBinaryTypeW GetBinaryType; 
    2389 alias GetCommandLineW GetCommandLine; 
    2390 alias GetCompressedFileSizeW GetCompressedFileSize; 
    2391 alias GetComputerNameW GetComputerName; 
    2392 alias GetCurrentDirectoryW GetCurrentDirectory; 
    2393 alias GetDefaultCommConfigW GetDefaultCommConfig; 
    2394 alias GetDiskFreeSpaceW GetDiskFreeSpace; 
    2395 alias GetDiskFreeSpaceExW GetDiskFreeSpaceEx; 
    2396 alias GetDriveTypeW GetDriveType; 
    2397 alias GetEnvironmentStringsW GetEnvironmentStrings; 
    2398 alias GetEnvironmentVariableW GetEnvironmentVariable; 
    2399 alias GetFileAttributesW GetFileAttributes; 
    2400 alias GetFileSecurityW GetFileSecurity; 
    2401 alias GetFileAttributesExW GetFileAttributesEx; 
    2402 alias GetFullPathNameW GetFullPathName; 
    2403 alias GetLogicalDriveStringsW GetLogicalDriveStrings; 
    2404 alias GetModuleFileNameW GetModuleFileName; 
    2405 alias GetModuleHandleW GetModuleHandle; 
    2406 alias GetNamedPipeHandleStateW GetNamedPipeHandleState; 
    2407 alias GetPrivateProfileIntW GetPrivateProfileInt; 
    2408 alias GetPrivateProfileSectionW GetPrivateProfileSection; 
    2409 alias GetPrivateProfileSectionNamesW GetPrivateProfileSectionNames; 
    2410 alias GetPrivateProfileStringW GetPrivateProfileString; 
    2411 alias GetPrivateProfileStructW GetPrivateProfileStruct; 
    2412 alias GetProfileIntW GetProfileInt; 
    2413 alias GetProfileSectionW GetProfileSection; 
    2414 alias GetProfileStringW GetProfileString; 
    2415 alias GetShortPathNameW GetShortPathName; 
    2416 alias GetStartupInfoW GetStartupInfo; 
    2417 alias GetSystemDirectoryW GetSystemDirectory; 
    2418 alias GetTempFileNameW GetTempFileName; 
    2419 alias GetTempPathW GetTempPath; 
    2420 alias GetUserNameW GetUserName; 
    2421 alias GetVersionExW GetVersionEx; 
    2422 alias GetVolumeInformationW GetVolumeInformation; 
    2423 alias GetWindowsDirectoryW GetWindowsDirectory; 
    2424 alias GlobalAddAtomW GlobalAddAtom; 
    2425 alias GlobalFindAtomW GlobalFindAtom; 
    2426 alias GlobalGetAtomNameW GlobalGetAtomName; 
    2427 alias IsBadStringPtrW IsBadStringPtr; 
    2428 alias LoadLibraryW LoadLibrary; 
    2429 alias LoadLibraryExW LoadLibraryEx; 
    2430 alias LogonUserW LogonUser; 
    2431 alias LookupAccountNameW LookupAccountName; 
    2432 alias LookupAccountSidW LookupAccountSid; 
    2433 alias LookupPrivilegeDisplayNameW LookupPrivilegeDisplayName; 
    2434 alias LookupPrivilegeNameW LookupPrivilegeName; 
    2435 alias LookupPrivilegeValueW LookupPrivilegeValue; 
    2436 alias lstrcatW lstrcat; 
    2437 alias lstrcmpW lstrcmp; 
    2438 alias lstrcmpiW lstrcmpi; 
    2439 alias lstrcpyW lstrcpy; 
    2440 alias lstrcpynW lstrcpyn; 
    2441 alias lstrlenW lstrlen; 
    2442 alias MoveFileW MoveFile; 
    2443 alias MoveFileExW MoveFileEx; 
    2444 alias ObjectCloseAuditAlarmW ObjectCloseAuditAlarm; 
    2445 alias ObjectDeleteAuditAlarmW ObjectDeleteAuditAlarm; 
    2446 alias ObjectOpenAuditAlarmW ObjectOpenAuditAlarm; 
    2447 alias ObjectPrivilegeAuditAlarmW ObjectPrivilegeAuditAlarm; 
    2448 alias OpenBackupEventLogW OpenBackupEventLog; 
    2449 alias OpenEventW OpenEvent; 
    2450 alias OpenEventLogW OpenEventLog; 
    2451 alias OpenFileMappingW OpenFileMapping; 
    2452 alias OpenMutexW OpenMutex; 
    2453 alias OpenSemaphoreW OpenSemaphore; 
    2454 alias OutputDebugStringW OutputDebugString; 
    2455 alias PrivilegedServiceAuditAlarmW PrivilegedServiceAuditAlarm; 
    2456 alias QueryDosDeviceW QueryDosDevice; 
    2457 alias ReadEventLogW ReadEventLog; 
    2458 alias RegisterEventSourceW RegisterEventSource; 
    2459 alias RemoveDirectoryW RemoveDirectory; 
    2460 alias ReportEventW ReportEvent; 
    2461 alias SearchPathW SearchPath; 
    2462 alias SetComputerNameW SetComputerName; 
    2463 alias SetCurrentDirectoryW SetCurrentDirectory; 
    2464 alias SetDefaultCommConfigW SetDefaultCommConfig; 
    2465 alias SetEnvironmentVariableW SetEnvironmentVariable; 
    2466 alias SetFileAttributesW SetFileAttributes; 
    2467 alias SetFileSecurityW SetFileSecurity; 
    2468 alias SetVolumeLabelW SetVolumeLabel; 
    2469 alias UpdateResourceW UpdateResource; 
    2470 alias VerifyVersionInfoW VerifyVersionInfo; 
    2471 alias WaitNamedPipeW WaitNamedPipe; 
    2472 alias WritePrivateProfileSectionW WritePrivateProfileSection; 
    2473 alias WritePrivateProfileStringW WritePrivateProfileString; 
    2474 alias WritePrivateProfileStructW WritePrivateProfileStruct; 
    2475 alias WriteProfileSectionW WriteProfileSection; 
    2476 alias WriteProfileStringW WriteProfileString; 
    2477  
    2478 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
    2479     alias GetLongPathNameW GetLongPathName; 
    2480 
    2481  
    2482 static if (_WIN32_WINNT >= 0x0500) { 
    2483     alias CreateHardLinkW CreateHardLink; 
    2484     alias CreateJobObjectW CreateJobObject; 
    2485     alias DeleteVolumeMountPointW DeleteVolumeMountPoint; 
    2486     alias DnsHostnameToComputerNameW DnsHostnameToComputerName; 
    2487     alias FindFirstVolumeW FindFirstVolume; 
    2488     alias FindFirstVolumeMountPointW FindFirstVolumeMountPoint; 
    2489     alias FindNextVolumeW FindNextVolume; 
    2490     alias FindNextVolumeMountPointW FindNextVolumeMountPoint; 
    2491     alias GetSystemWindowsDirectoryW GetSystemWindowsDirectory; 
    2492     alias ReplaceFileW ReplaceFile; 
    2493     alias GetModuleHandleExW GetModuleHandleEx; 
    2494     alias GetVolumeNameForVolumeMountPointW GetVolumeNameForVolumeMountPoint; 
    2495     alias GetVolumePathNameW GetVolumePathName; 
    2496     alias SetVolumeMountPointW SetVolumeMountPoint; 
    2497 
    2498 static if (_WIN32_WINNT >= 0x0501) { 
    2499     alias ACTCTXW ACTCTX; 
    2500     alias ACTCTX * PACTCTX; 
    2501     alias PCACTCTXW PCACTCTX; 
    2502     alias GetVolumePathNamesForVolumeNameW GetVolumePathNamesForVolumeName; 
    2503     alias GetSystemWow64DirectoryW GetSystemWow64Directory; 
    2504     alias SetFileShortNameW SetFileShortName; 
    2505     alias CheckNameLegalDOS8Dot3W CheckNameLegalDOS8Dot3; 
    2506     alias CreateActCtxW CreateActCtx; 
    2507     alias FindActCtxSectionStringW FindActCtxSectionString; 
    2508 
    2509  
    2510 static if (_WIN32_WINNT >= 0x0502) { 
    2511     alias SetFirmwareEnvironmentVariableW SetFirmwareEnvironmentVariable; 
    2512     alias SetDllDirectoryW SetDllDirectory; 
    2513     alias GetDllDirectoryW GetDllDirectory; 
    2514 
     2334   alias STARTUPINFOW STARTUPINFO; 
     2335   alias WIN32_FIND_DATAW WIN32_FIND_DATA; 
     2336   alias HW_PROFILE_INFOW HW_PROFILE_INFO; 
     2337   alias STARTUPINFO* LPSTARTUPINFO; 
     2338   alias WIN32_FIND_DATA* LPWIN32_FIND_DATA; 
     2339   alias HW_PROFILE_INFO* LPHW_PROFILE_INFO; 
     2340   alias AccessCheckAndAuditAlarmW AccessCheckAndAuditAlarm; 
     2341   alias AddAtomW AddAtom; 
     2342   alias BackupEventLogW BackupEventLog; 
     2343   alias BeginUpdateResourceW BeginUpdateResource; 
     2344   alias BuildCommDCBW BuildCommDCB; 
     2345   alias BuildCommDCBAndTimeoutsW BuildCommDCBAndTimeouts; 
     2346   alias CallNamedPipeW CallNamedPipe; 
     2347   alias ClearEventLogW ClearEventLog; 
     2348   alias CommConfigDialogW CommConfigDialog; 
     2349   alias CopyFileW CopyFile; 
     2350   alias CopyFileExW CopyFileEx; 
     2351   alias CreateDirectoryW CreateDirectory; 
     2352   alias CreateDirectoryExW CreateDirectoryEx; 
     2353   alias CreateEventW CreateEvent; 
     2354   alias CreateFileW CreateFile; 
     2355   alias CreateFileMappingW CreateFileMapping; 
     2356   alias CreateMailslotW CreateMailslot; 
     2357   alias CreateMutexW CreateMutex; 
     2358   alias CreateNamedPipeW CreateNamedPipe; 
     2359   alias CreateProcessW CreateProcess; 
     2360   alias CreateProcessAsUserW CreateProcessAsUser; 
     2361   alias CreateSemaphoreW CreateSemaphore; 
     2362   alias CreateWaitableTimerW CreateWaitableTimer; 
     2363   alias DefineDosDeviceW DefineDosDevice; 
     2364   alias DeleteFileW DeleteFile; 
     2365   alias EncryptFileW EncryptFile; 
     2366   alias EndUpdateResourceW EndUpdateResource; 
     2367   alias EnumResourceLanguagesW EnumResourceLanguages; 
     2368   alias EnumResourceNamesW EnumResourceNames; 
     2369   alias EnumResourceTypesW EnumResourceTypes; 
     2370   alias ExpandEnvironmentStringsW ExpandEnvironmentStrings; 
     2371   alias FatalAppExitW FatalAppExit; 
     2372   alias FileEncryptionStatusW FileEncryptionStatus; 
     2373   alias FindAtomW FindAtom; 
     2374   alias FindFirstChangeNotificationW FindFirstChangeNotification; 
     2375   alias FindFirstFileW FindFirstFile; 
     2376   alias FindFirstFileExW FindFirstFileEx; 
     2377   alias FindNextFileW FindNextFile; 
     2378   alias FindResourceW FindResource; 
     2379   alias FindResourceExW FindResourceEx; 
     2380   alias FormatMessageW FormatMessage; 
     2381   alias FreeEnvironmentStringsW FreeEnvironmentStrings; 
     2382   alias GetAtomNameW GetAtomName; 
     2383   alias GetBinaryTypeW GetBinaryType; 
     2384   alias GetCommandLineW GetCommandLine; 
     2385   alias GetCompressedFileSizeW GetCompressedFileSize; 
     2386   alias GetComputerNameW GetComputerName; 
     2387   alias GetCurrentDirectoryW GetCurrentDirectory; 
     2388   alias GetDefaultCommConfigW GetDefaultCommConfig; 
     2389   alias GetDiskFreeSpaceW GetDiskFreeSpace; 
     2390   alias GetDiskFreeSpaceExW GetDiskFreeSpaceEx; 
     2391   alias GetDriveTypeW GetDriveType; 
     2392   alias GetEnvironmentStringsW GetEnvironmentStrings; 
     2393   alias GetEnvironmentVariableW GetEnvironmentVariable; 
     2394   alias GetFileAttributesW GetFileAttributes; 
     2395   alias GetFileSecurityW GetFileSecurity; 
     2396   alias GetFileAttributesExW GetFileAttributesEx; 
     2397   alias GetFullPathNameW GetFullPathName; 
     2398   alias GetLogicalDriveStringsW GetLogicalDriveStrings; 
     2399   alias GetModuleFileNameW GetModuleFileName; 
     2400   alias GetModuleHandleW GetModuleHandle; 
     2401   alias GetNamedPipeHandleStateW GetNamedPipeHandleState; 
     2402   alias GetPrivateProfileIntW GetPrivateProfileInt; 
     2403   alias GetPrivateProfileSectionW GetPrivateProfileSection; 
     2404   alias GetPrivateProfileSectionNamesW GetPrivateProfileSectionNames; 
     2405   alias GetPrivateProfileStringW GetPrivateProfileString; 
     2406   alias GetPrivateProfileStructW GetPrivateProfileStruct; 
     2407   alias GetProfileIntW GetProfileInt; 
     2408   alias GetProfileSectionW GetProfileSection; 
     2409   alias GetProfileStringW GetProfileString; 
     2410   alias GetShortPathNameW GetShortPathName; 
     2411   alias GetStartupInfoW GetStartupInfo; 
     2412   alias GetSystemDirectoryW GetSystemDirectory; 
     2413   alias GetTempFileNameW GetTempFileName; 
     2414   alias GetTempPathW GetTempPath; 
     2415   alias GetUserNameW GetUserName; 
     2416   alias GetVersionExW GetVersionEx; 
     2417   alias GetVolumeInformationW GetVolumeInformation; 
     2418   alias GetWindowsDirectoryW GetWindowsDirectory; 
     2419   alias GlobalAddAtomW GlobalAddAtom; 
     2420   alias GlobalFindAtomW GlobalFindAtom; 
     2421   alias GlobalGetAtomNameW GlobalGetAtomName; 
     2422   alias IsBadStringPtrW IsBadStringPtr; 
     2423   alias LoadLibraryW LoadLibrary; 
     2424   alias LoadLibraryExW LoadLibraryEx; 
     2425   alias LogonUserW LogonUser; 
     2426   alias LookupAccountNameW LookupAccountName; 
     2427   alias LookupAccountSidW LookupAccountSid; 
     2428   alias LookupPrivilegeDisplayNameW LookupPrivilegeDisplayName; 
     2429   alias LookupPrivilegeNameW LookupPrivilegeName; 
     2430   alias LookupPrivilegeValueW LookupPrivilegeValue; 
     2431   alias lstrcatW lstrcat; 
     2432   alias lstrcmpW lstrcmp; 
     2433   alias lstrcmpiW lstrcmpi; 
     2434   alias lstrcpyW lstrcpy; 
     2435   alias lstrcpynW lstrcpyn; 
     2436   alias lstrlenW lstrlen; 
     2437   alias MoveFileW MoveFile; 
     2438   alias MoveFileExW MoveFileEx; 
     2439   alias ObjectCloseAuditAlarmW ObjectCloseAuditAlarm; 
     2440   alias ObjectDeleteAuditAlarmW ObjectDeleteAuditAlarm; 
     2441   alias ObjectOpenAuditAlarmW ObjectOpenAuditAlarm; 
     2442   alias ObjectPrivilegeAuditAlarmW ObjectPrivilegeAuditAlarm; 
     2443   alias OpenBackupEventLogW OpenBackupEventLog; 
     2444   alias OpenEventW OpenEvent; 
     2445   alias OpenEventLogW OpenEventLog; 
     2446   alias OpenFileMappingW OpenFileMapping; 
     2447   alias OpenMutexW OpenMutex; 
     2448   alias OpenSemaphoreW OpenSemaphore; 
     2449   alias OutputDebugStringW OutputDebugString; 
     2450   alias PrivilegedServiceAuditAlarmW PrivilegedServiceAuditAlarm; 
     2451   alias QueryDosDeviceW QueryDosDevice; 
     2452   alias ReadEventLogW ReadEventLog; 
     2453   alias RegisterEventSourceW RegisterEventSource; 
     2454   alias RemoveDirectoryW RemoveDirectory; 
     2455   alias ReportEventW ReportEvent; 
     2456   alias SearchPathW SearchPath; 
     2457   alias SetComputerNameW SetComputerName; 
     2458   alias SetCurrentDirectoryW SetCurrentDirectory; 
     2459   alias SetDefaultCommConfigW SetDefaultCommConfig; 
     2460   alias SetEnvironmentVariableW SetEnvironmentVariable; 
     2461   alias SetFileAttributesW SetFileAttributes; 
     2462   alias SetFileSecurityW SetFileSecurity; 
     2463   alias SetVolumeLabelW SetVolumeLabel; 
     2464   alias UpdateResourceW UpdateResource; 
     2465   alias VerifyVersionInfoW VerifyVersionInfo; 
     2466   alias WaitNamedPipeW WaitNamedPipe; 
     2467   alias WritePrivateProfileSectionW WritePrivateProfileSection; 
     2468   alias WritePrivateProfileStringW WritePrivateProfileString; 
     2469   alias WritePrivateProfileStructW WritePrivateProfileStruct; 
     2470   alias WriteProfileSectionW WriteProfileSection; 
     2471   alias WriteProfileStringW WriteProfileString; 
     2472 
     2473   static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
     2474       alias GetLongPathNameW GetLongPathName; 
     2475   
     2476 
     2477   static if (_WIN32_WINNT >= 0x0500) { 
     2478       alias CreateHardLinkW CreateHardLink; 
     2479       alias CreateJobObjectW CreateJobObject; 
     2480       alias DeleteVolumeMountPointW DeleteVolumeMountPoint; 
     2481       alias DnsHostnameToComputerNameW DnsHostnameToComputerName; 
     2482       alias FindFirstVolumeW FindFirstVolume; 
     2483       alias FindFirstVolumeMountPointW FindFirstVolumeMountPoint; 
     2484       alias FindNextVolumeW FindNextVolume; 
     2485       alias FindNextVolumeMountPointW FindNextVolumeMountPoint; 
     2486       alias GetSystemWindowsDirectoryW GetSystemWindowsDirectory; 
     2487       alias ReplaceFileW ReplaceFile; 
     2488       alias GetModuleHandleExW GetModuleHandleEx; 
     2489       alias GetVolumeNameForVolumeMountPointW GetVolumeNameForVolumeMountPoint; 
     2490       alias GetVolumePathNameW GetVolumePathName; 
     2491       alias SetVolumeMountPointW SetVolumeMountPoint; 
     2492   
     2493   static if (_WIN32_WINNT >= 0x0501) { 
     2494       alias ACTCTXW ACTCTX; 
     2495       alias ACTCTX* PACTCTX; 
     2496       alias PCACTCTXW PCACTCTX; 
     2497       alias GetVolumePathNamesForVolumeNameW GetVolumePathNamesForVolumeName; 
     2498       alias GetSystemWow64DirectoryW GetSystemWow64Directory; 
     2499       alias SetFileShortNameW SetFileShortName; 
     2500       alias CheckNameLegalDOS8Dot3W CheckNameLegalDOS8Dot3; 
     2501       alias CreateActCtxW CreateActCtx; 
     2502       alias FindActCtxSectionStringW FindActCtxSectionString; 
     2503   
     2504 
     2505   static if (_WIN32_WINNT >= 0x0502) { 
     2506       alias SetFirmwareEnvironmentVariableW SetFirmwareEnvironmentVariable; 
     2507       alias SetDllDirectoryW SetDllDirectory; 
     2508       alias GetDllDirectoryW GetDllDirectory; 
     2509   
    25152510 
    25162511} else { 
    2517 // -------- 
    2518 // Aliases for ASCII 
    2519  
    2520 alias STARTUPINFOA STARTUPINFO; 
    2521 alias WIN32_FIND_DATAA WIN32_FIND_DATA; 
    2522 alias HW_PROFILE_INFOA HW_PROFILE_INFO; 
    2523 alias STARTUPINFO * LPSTARTUPINFO; 
    2524 alias WIN32_FIND_DATA * LPWIN32_FIND_DATA; 
    2525 alias HW_PROFILE_INFO *LPHW_PROFILE_INFO; 
    2526 alias AccessCheckAndAuditAlarmA AccessCheckAndAuditAlarm; 
    2527 alias AddAtomA AddAtom; 
    2528 alias BackupEventLogA BackupEventLog; 
    2529 alias BeginUpdateResourceA BeginUpdateResource; 
    2530 alias BuildCommDCBA BuildCommDCB; 
    2531 alias BuildCommDCBAndTimeoutsA BuildCommDCBAndTimeouts; 
    2532 alias CallNamedPipeA CallNamedPipe; 
    2533 alias ClearEventLogA ClearEventLog; 
    2534 alias CommConfigDialogA CommConfigDialog; 
    2535 alias CopyFileA CopyFile; 
    2536 alias CopyFileExA CopyFileEx; 
    2537 alias CreateDirectoryA CreateDirectory; 
    2538 alias CreateDirectoryExA CreateDirectoryEx; 
    2539 alias CreateEventA CreateEvent; 
    2540 alias CreateFileA CreateFile; 
    2541 alias CreateFileMappingA CreateFileMapping; 
    2542 alias CreateMailslotA CreateMailslot; 
    2543 alias CreateMutexA CreateMutex; 
    2544 alias CreateNamedPipeA CreateNamedPipe; 
    2545 alias CreateProcessA CreateProcess; 
    2546 alias CreateProcessAsUserA CreateProcessAsUser; 
    2547 alias CreateSemaphoreA CreateSemaphore; 
    2548 alias CreateWaitableTimerA CreateWaitableTimer; 
    2549 alias DefineDosDeviceA DefineDosDevice; 
    2550 alias DeleteFileA DeleteFile; 
    2551 alias EncryptFileA EncryptFile; 
    2552 alias EndUpdateResourceA EndUpdateResource; 
    2553 alias EnumResourceLanguagesA EnumResourceLanguages; 
    2554 alias EnumResourceNamesA EnumResourceNames; 
    2555 alias EnumResourceTypesA EnumResourceTypes; 
    2556 alias ExpandEnvironmentStringsA ExpandEnvironmentStrings; 
    2557 alias FatalAppExitA FatalAppExit; 
    2558 alias FileEncryptionStatusA FileEncryptionStatus; 
    2559 alias FindAtomA FindAtom; 
    2560 alias FindFirstChangeNotificationA FindFirstChangeNotification; 
    2561 alias FindFirstFileA FindFirstFile; 
    2562 alias FindFirstFileExA FindFirstFileEx; 
    2563 alias FindNextFileA FindNextFile; 
    2564 alias FindResourceA FindResource; 
    2565 alias FindResourceExA FindResourceEx; 
    2566 alias FormatMessageA FormatMessage; 
    2567 alias FreeEnvironmentStringsA FreeEnvironmentStrings; 
    2568 alias GetAtomNameA GetAtomName; 
    2569 alias GetBinaryTypeA GetBinaryType; 
    2570 alias GetCommandLineA GetCommandLine; 
    2571 alias GetComputerNameA GetComputerName; 
    2572 alias GetCompressedFileSizeA GetCompressedFileSize; 
    2573 alias GetCurrentDirectoryA GetCurrentDirectory; 
    2574 alias GetDefaultCommConfigA GetDefaultCommConfig; 
    2575 alias GetDiskFreeSpaceA GetDiskFreeSpace; 
    2576 alias GetDiskFreeSpaceExA GetDiskFreeSpaceEx; 
    2577 alias GetDriveTypeA GetDriveType; 
    2578 alias GetEnvironmentVariableA GetEnvironmentVariable; 
    2579 alias GetFileAttributesA GetFileAttributes; 
    2580 alias GetFileSecurityA GetFileSecurity; 
    2581 alias GetFileAttributesExA GetFileAttributesEx; 
    2582 alias GetFullPathNameA GetFullPathName; 
    2583 alias GetLogicalDriveStringsA GetLogicalDriveStrings; 
    2584 alias GetNamedPipeHandleStateA GetNamedPipeHandleState; 
    2585 alias GetModuleHandleA GetModuleHandle; 
    2586 alias GetModuleFileNameA GetModuleFileName; 
    2587 alias GetPrivateProfileIntA GetPrivateProfileInt; 
    2588 alias GetPrivateProfileSectionA GetPrivateProfileSection; 
    2589 alias GetPrivateProfileSectionNamesA GetPrivateProfileSectionNames; 
    2590 alias GetPrivateProfileStringA GetPrivateProfileString; 
    2591 alias GetPrivateProfileStructA GetPrivateProfileStruct; 
    2592 alias GetProfileIntA GetProfileInt; 
    2593 alias GetProfileSectionA GetProfileSection; 
    2594 alias GetProfileStringA GetProfileString; 
    2595 alias GetShortPathNameA GetShortPathName; 
    2596 alias GetStartupInfoA GetStartupInfo; 
    2597 alias GetSystemDirectoryA GetSystemDirectory; 
    2598 alias GetTempFileNameA GetTempFileName; 
    2599 alias GetTempPathA GetTempPath; 
    2600 alias GetUserNameA GetUserName; 
    2601 alias GetVersionExA GetVersionEx; 
    2602 alias GetVolumeInformationA GetVolumeInformation; 
    2603 alias GetWindowsDirectoryA GetWindowsDirectory; 
    2604 alias GlobalAddAtomA GlobalAddAtom; 
    2605 alias GlobalFindAtomA GlobalFindAtom; 
    2606 alias GlobalGetAtomNameA GlobalGetAtomName; 
    2607 alias IsBadStringPtrA IsBadStringPtr; 
    2608 alias LoadLibraryA LoadLibrary; 
    2609 alias LoadLibraryExA LoadLibraryEx; 
    2610 alias LogonUserA LogonUser; 
    2611 alias LookupAccountNameA LookupAccountName; 
    2612 alias LookupAccountSidA LookupAccountSid; 
    2613 alias LookupPrivilegeDisplayNameA LookupPrivilegeDisplayName; 
    2614 alias LookupPrivilegeNameA LookupPrivilegeName; 
    2615 alias LookupPrivilegeValueA LookupPrivilegeValue; 
    2616 alias lstrcatA lstrcat; 
    2617 alias lstrcmpA lstrcmp; 
    2618 alias lstrcmpiA lstrcmpi; 
    2619 alias lstrcpyA lstrcpy; 
    2620 alias lstrcpynA lstrcpyn; 
    2621 alias lstrlenA lstrlen; 
    2622 alias MoveFileA MoveFile; 
    2623 alias MoveFileExA MoveFileEx; 
    2624 alias ObjectCloseAuditAlarmA ObjectCloseAuditAlarm; 
    2625 alias ObjectDeleteAuditAlarmA ObjectDeleteAuditAlarm; 
    2626 alias ObjectOpenAuditAlarmA ObjectOpenAuditAlarm; 
    2627 alias ObjectPrivilegeAuditAlarmA ObjectPrivilegeAuditAlarm; 
    2628 alias OpenBackupEventLogA OpenBackupEventLog; 
    2629 alias OpenEventA OpenEvent; 
    2630 alias OpenEventLogA OpenEventLog; 
    2631 alias OpenFileMappingA OpenFileMapping; 
    2632 alias OpenMutexA OpenMutex; 
    2633 alias OpenSemaphoreA OpenSemaphore; 
    2634 alias OutputDebugStringA OutputDebugString; 
    2635 alias PrivilegedServiceAuditAlarmA PrivilegedServiceAuditAlarm; 
    2636 alias QueryDosDeviceA QueryDosDevice; 
    2637 alias ReadEventLogA ReadEventLog; 
    2638 alias RegisterEventSourceA RegisterEventSource; 
    2639 alias RemoveDirectoryA RemoveDirectory; 
    2640 alias ReportEventA ReportEvent; 
    2641 alias SearchPathA SearchPath; 
    2642 alias SetComputerNameA SetComputerName; 
    2643 alias SetCurrentDirectoryA SetCurrentDirectory; 
    2644 alias SetDefaultCommConfigA SetDefaultCommConfig; 
    2645 alias SetEnvironmentVariableA SetEnvironmentVariable; 
    2646 alias SetFileAttributesA SetFileAttributes; 
    2647 alias SetFileSecurityA SetFileSecurity; 
    2648 alias SetVolumeLabelA SetVolumeLabel; 
    2649 alias UpdateResourceA UpdateResource; 
    2650 alias VerifyVersionInfoA VerifyVersionInfo; 
    2651 alias WaitNamedPipeA WaitNamedPipe; 
    2652 alias WritePrivateProfileSectionA WritePrivateProfileSection; 
    2653 alias WritePrivateProfileStringA WritePrivateProfileString; 
    2654 alias WritePrivateProfileStructA WritePrivateProfileStruct; 
    2655 alias WriteProfileSectionA WriteProfileSection; 
    2656 alias WriteProfileStringA WriteProfileString; 
    2657  
    2658 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
    2659     alias GetLongPathNameA GetLongPathName; 
    2660 
    2661  
    2662 static if (_WIN32_WINNT >= 0x0500) { 
    2663     alias GetVolumeNameForVolumeMountPointA GetVolumeNameForVolumeMountPoint; 
    2664     alias GetVolumePathNameA GetVolumePathName; 
    2665     alias SetVolumeMountPointA SetVolumeMountPoint; 
    2666     alias CreateHardLinkA CreateHardLink; 
    2667     alias CreateJobObjectA CreateJobObject; 
    2668     alias DeleteVolumeMountPointA DeleteVolumeMountPoint; 
    2669     alias DnsHostnameToComputerNameA DnsHostnameToComputerName; 
    2670     alias GetModuleHandleExA GetModuleHandleEx; 
    2671     alias GetSystemWindowsDirectoryA GetSystemWindowsDirectory; 
    2672     alias ReplaceFileA ReplaceFile; 
    2673     alias FindFirstVolumeA FindFirstVolume; 
    2674     alias FindNextVolumeA FindNextVolume; 
    2675     alias FindFirstVolumeMountPointA FindFirstVolumeMountPoint; 
    2676     alias FindNextVolumeMountPointA FindNextVolumeMountPoint; 
    2677 
    2678 static if (_WIN32_WINNT >= 0x0501) { 
    2679     alias ACTCTXA ACTCTX; 
    2680     alias ACTCTXA * PACTCTX; 
    2681     alias PCACTCTXA PCACTCTX; 
    2682     alias GetVolumePathNamesForVolumeNameA GetVolumePathNamesForVolumeName; 
    2683     alias FindActCtxSectionStringA FindActCtxSectionString; 
    2684     alias CheckNameLegalDOS8Dot3A CheckNameLegalDOS8Dot3; 
    2685     alias CreateActCtxA CreateActCtx; 
    2686     alias SetFileShortNameA SetFileShortName; 
    2687     alias GetSystemWow64DirectoryA GetSystemWow64Directory; 
    2688 
    2689  
    2690 static if (_WIN32_WINNT >= 0x0502) { 
    2691     alias GetDllDirectoryA GetDllDirectory; 
    2692     alias SetDllDirectoryA SetDllDirectory; 
    2693     alias SetFirmwareEnvironmentVariableA SetFirmwareEnvironmentVariable; 
    2694 
    2695  
    2696 } 
     2512   // -------- 
     2513   // Aliases for ASCII 
     2514 
     2515   alias STARTUPINFOA STARTUPINFO; 
     2516   alias WIN32_FIND_DATAA WIN32_FIND_DATA; 
     2517   alias HW_PROFILE_INFOA HW_PROFILE_INFO; 
     2518   alias STARTUPINFO* LPSTARTUPINFO; 
     2519   alias WIN32_FIND_DATA* LPWIN32_FIND_DATA; 
     2520   alias HW_PROFILE_INFO* LPHW_PROFILE_INFO; 
     2521   alias AccessCheckAndAuditAlarmA AccessCheckAndAuditAlarm; 
     2522   alias AddAtomA AddAtom; 
     2523   alias BackupEventLogA BackupEventLog; 
     2524   alias BeginUpdateResourceA BeginUpdateResource; 
     2525   alias BuildCommDCBA BuildCommDCB; 
     2526   alias BuildCommDCBAndTimeoutsA BuildCommDCBAndTimeouts; 
     2527   alias CallNamedPipeA CallNamedPipe; 
     2528   alias ClearEventLogA ClearEventLog; 
     2529   alias CommConfigDialogA CommConfigDialog; 
     2530   alias CopyFileA CopyFile; 
     2531   alias CopyFileExA CopyFileEx; 
     2532   alias CreateDirectoryA CreateDirectory; 
     2533   alias CreateDirectoryExA CreateDirectoryEx; 
     2534   alias CreateEventA CreateEvent; 
     2535   alias CreateFileA CreateFile; 
     2536   alias CreateFileMappingA CreateFileMapping; 
     2537   alias CreateMailslotA CreateMailslot; 
     2538   alias CreateMutexA CreateMutex; 
     2539   alias CreateNamedPipeA CreateNamedPipe; 
     2540   alias CreateProcessA CreateProcess; 
     2541   alias CreateProcessAsUserA CreateProcessAsUser; 
     2542   alias CreateSemaphoreA CreateSemaphore; 
     2543   alias CreateWaitableTimerA CreateWaitableTimer; 
     2544   alias DefineDosDeviceA DefineDosDevice; 
     2545   alias DeleteFileA DeleteFile; 
     2546   alias EncryptFileA EncryptFile; 
     2547   alias EndUpdateResourceA EndUpdateResource; 
     2548   alias EnumResourceLanguagesA EnumResourceLanguages; 
     2549   alias EnumResourceNamesA EnumResourceNames; 
     2550   alias EnumResourceTypesA EnumResourceTypes; 
     2551   alias ExpandEnvironmentStringsA ExpandEnvironmentStrings; 
     2552   alias FatalAppExitA FatalAppExit; 
     2553   alias FileEncryptionStatusA FileEncryptionStatus; 
     2554   alias FindAtomA FindAtom; 
     2555   alias FindFirstChangeNotificationA FindFirstChangeNotification; 
     2556   alias FindFirstFileA FindFirstFile; 
     2557   alias FindFirstFileExA FindFirstFileEx; 
     2558   alias FindNextFileA FindNextFile; 
     2559   alias FindResourceA FindResource; 
     2560   alias FindResourceExA FindResourceEx; 
     2561   alias FormatMessageA FormatMessage; 
     2562   alias FreeEnvironmentStringsA FreeEnvironmentStrings; 
     2563   alias GetAtomNameA GetAtomName; 
     2564   alias GetBinaryTypeA GetBinaryType; 
     2565   alias GetCommandLineA GetCommandLine; 
     2566   alias GetComputerNameA GetComputerName; 
     2567   alias GetCompressedFileSizeA GetCompressedFileSize; 
     2568   alias GetCurrentDirectoryA GetCurrentDirectory; 
     2569   alias GetDefaultCommConfigA GetDefaultCommConfig; 
     2570   alias GetDiskFreeSpaceA GetDiskFreeSpace; 
     2571   alias GetDiskFreeSpaceExA GetDiskFreeSpaceEx; 
     2572   alias GetDriveTypeA GetDriveType; 
     2573   alias GetEnvironmentVariableA GetEnvironmentVariable; 
     2574   alias GetFileAttributesA GetFileAttributes; 
     2575   alias GetFileSecurityA GetFileSecurity; 
     2576   alias GetFileAttributesExA GetFileAttributesEx; 
     2577   alias GetFullPathNameA GetFullPathName; 
     2578   alias GetLogicalDriveStringsA GetLogicalDriveStrings; 
     2579   alias GetNamedPipeHandleStateA GetNamedPipeHandleState; 
     2580   alias GetModuleHandleA GetModuleHandle; 
     2581   alias GetModuleFileNameA GetModuleFileName; 
     2582   alias GetPrivateProfileIntA GetPrivateProfileInt; 
     2583   alias GetPrivateProfileSectionA GetPrivateProfileSection; 
     2584   alias GetPrivateProfileSectionNamesA GetPrivateProfileSectionNames; 
     2585   alias GetPrivateProfileStringA GetPrivateProfileString; 
     2586   alias GetPrivateProfileStructA GetPrivateProfileStruct; 
     2587   alias GetProfileIntA GetProfileInt; 
     2588   alias GetProfileSectionA GetProfileSection; 
     2589   alias GetProfileStringA GetProfileString; 
     2590   alias GetShortPathNameA GetShortPathName; 
     2591   alias GetStartupInfoA GetStartupInfo; 
     2592   alias GetSystemDirectoryA GetSystemDirectory; 
     2593   alias GetTempFileNameA GetTempFileName; 
     2594   alias GetTempPathA GetTempPath; 
     2595   alias GetUserNameA GetUserName; 
     2596   alias GetVersionExA GetVersionEx; 
     2597   alias GetVolumeInformationA GetVolumeInformation; 
     2598   alias GetWindowsDirectoryA GetWindowsDirectory; 
     2599   alias GlobalAddAtomA GlobalAddAtom; 
     2600   alias GlobalFindAtomA GlobalFindAtom; 
     2601   alias GlobalGetAtomNameA GlobalGetAtomName; 
     2602   alias IsBadStringPtrA IsBadStringPtr; 
     2603   alias LoadLibraryA LoadLibrary; 
     2604   alias LoadLibraryExA LoadLibraryEx; 
     2605   alias LogonUserA LogonUser; 
     2606   alias LookupAccountNameA LookupAccountName; 
     2607   alias LookupAccountSidA LookupAccountSid; 
     2608   alias LookupPrivilegeDisplayNameA LookupPrivilegeDisplayName; 
     2609   alias LookupPrivilegeNameA LookupPrivilegeName; 
     2610   alias LookupPrivilegeValueA LookupPrivilegeValue; 
     2611   alias lstrcatA lstrcat; 
     2612   alias lstrcmpA lstrcmp; 
     2613   alias lstrcmpiA lstrcmpi; 
     2614   alias lstrcpyA lstrcpy; 
     2615   alias lstrcpynA lstrcpyn; 
     2616   alias lstrlenA lstrlen; 
     2617   alias MoveFileA MoveFile; 
     2618   alias MoveFileExA MoveFileEx; 
     2619   alias ObjectCloseAuditAlarmA ObjectCloseAuditAlarm; 
     2620   alias ObjectDeleteAuditAlarmA ObjectDeleteAuditAlarm; 
     2621   alias ObjectOpenAuditAlarmA ObjectOpenAuditAlarm; 
     2622   alias ObjectPrivilegeAuditAlarmA ObjectPrivilegeAuditAlarm; 
     2623   alias OpenBackupEventLogA OpenBackupEventLog; 
     2624   alias OpenEventA OpenEvent; 
     2625   alias OpenEventLogA OpenEventLog; 
     2626   alias OpenFileMappingA OpenFileMapping; 
     2627   alias OpenMutexA OpenMutex; 
     2628   alias OpenSemaphoreA OpenSemaphore; 
     2629   alias OutputDebugStringA OutputDebugString; 
     2630   alias PrivilegedServiceAuditAlarmA PrivilegedServiceAuditAlarm; 
     2631   alias QueryDosDeviceA QueryDosDevice; 
     2632   alias ReadEventLogA ReadEventLog; 
     2633   alias RegisterEventSourceA RegisterEventSource; 
     2634   alias RemoveDirectoryA RemoveDirectory; 
     2635   alias ReportEventA ReportEvent; 
     2636   alias SearchPathA SearchPath; 
     2637   alias SetComputerNameA SetComputerName; 
     2638   alias SetCurrentDirectoryA SetCurrentDirectory; 
     2639   alias SetDefaultCommConfigA SetDefaultCommConfig; 
     2640   alias SetEnvironmentVariableA SetEnvironmentVariable; 
     2641   alias SetFileAttributesA SetFileAttributes; 
     2642   alias SetFileSecurityA SetFileSecurity; 
     2643   alias SetVolumeLabelA SetVolumeLabel; 
     2644   alias UpdateResourceA UpdateResource; 
     2645   alias VerifyVersionInfoA VerifyVersionInfo; 
     2646   alias WaitNamedPipeA WaitNamedPipe; 
     2647   alias WritePrivateProfileSectionA WritePrivateProfileSection; 
     2648   alias WritePrivateProfileStringA WritePrivateProfileString; 
     2649   alias WritePrivateProfileStructA WritePrivateProfileStruct; 
     2650   alias WriteProfileSectionA WriteProfileSection; 
     2651   alias WriteProfileStringA WriteProfileString; 
     2652 
     2653   static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
     2654       alias GetLongPathNameA GetLongPathName; 
     2655   
     2656 
     2657   static if (_WIN32_WINNT >= 0x0500) { 
     2658       alias GetVolumeNameForVolumeMountPointA GetVolumeNameForVolumeMountPoint; 
     2659       alias GetVolumePathNameA GetVolumePathName; 
     2660       alias SetVolumeMountPointA SetVolumeMountPoint; 
     2661       alias CreateHardLinkA CreateHardLink; 
     2662       alias CreateJobObjectA CreateJobObject; 
     2663       alias DeleteVolumeMountPointA DeleteVolumeMountPoint; 
     2664       alias DnsHostnameToComputerNameA DnsHostnameToComputerName; 
     2665       alias GetModuleHandleExA GetModuleHandleEx; 
     2666       alias GetSystemWindowsDirectoryA GetSystemWindowsDirectory; 
     2667       alias ReplaceFileA ReplaceFile; 
     2668       alias FindFirstVolumeA FindFirstVolume; 
     2669       alias FindNextVolumeA FindNextVolume; 
     2670       alias FindFirstVolumeMountPointA FindFirstVolumeMountPoint; 
     2671       alias FindNextVolumeMountPointA FindNextVolumeMountPoint; 
     2672   
     2673   static if (_WIN32_WINNT >= 0x0501) { 
     2674       alias ACTCTXA ACTCTX; 
     2675       alias ACTCTXA* PACTCTX; 
     2676       alias PCACTCTXA PCACTCTX; 
     2677       alias GetVolumePathNamesForVolumeNameA GetVolumePathNamesForVolumeName; 
     2678       alias FindActCtxSectionStringA FindActCtxSectionString; 
     2679       alias CheckNameLegalDOS8Dot3A CheckNameLegalDOS8Dot3; 
     2680       alias CreateActCtxA CreateActCtx; 
     2681       alias SetFileShortNameA SetFileShortName; 
     2682       alias GetSystemWow64DirectoryA GetSystemWow64Directory; 
     2683   
     2684 
     2685   static if (_WIN32_WINNT >= 0x0502) { 
     2686       alias GetDllDirectoryA GetDllDirectory; 
     2687       alias SetDllDirectoryA SetDllDirectory; 
     2688       alias SetFirmwareEnvironmentVariableA SetFirmwareEnvironmentVariable; 
     2689   
     2690 
     2691} 
  • trunk/win32/wincon.d

    r127 r135  
    88*                       Placed into public domain                       * 
    99\***********************************************************************/ 
    10  
    1110module win32.wincon; 
     11pragma(lib, "kernel32.lib"); 
    1212 
    1313private import win32.w32api; 
    1414private import win32.windef; 
    15 pragma(lib, "kernel32.lib"); 
    1615 
    1716// FIXME: clean up Windows version support 
     
    8988 
    9089struct CHAR_INFO { 
    91     union Char
     90    union Char
    9291        WCHAR UnicodeChar; 
    9392        CHAR AsciiChar; 
     
    106105 
    107106struct CONSOLE_CURSOR_INFO { 
    108     DWORD  dwSize; 
    109     BOOL   bVisible; 
     107    DWORD dwSize; 
     108    BOOL  bVisible; 
    110109} 
    111110alias CONSOLE_CURSOR_INFO * PCONSOLE_CURSOR_INFO; 
     
    124123 
    125124struct CONSOLE_SCREEN_BUFFER_INFO { 
    126     COORD  dwSize; 
    127     COORD  dwCursorPosition; 
    128     WORD   wAttributes; 
     125    COORD      dwSize; 
     126    COORD      dwCursorPosition; 
     127    WORD       wAttributes; 
    129128    SMALL_RECT srWindow; 
    130     COORD  dwMaximumWindowSize; 
    131 } 
    132 alias CONSOLE_SCREEN_BUFFER_INFO * PCONSOLE_SCREEN_BUFFER_INFO; 
    133  
    134 alias BOOL function (DWORD) PHANDLER_ROUTINE; 
     129    COORD      dwMaximumWindowSize; 
     130} 
     131alias CONSOLE_SCREEN_BUFFER_INFO* PCONSOLE_SCREEN_BUFFER_INFO; 
     132 
     133alias BOOL function(DWORD) PHANDLER_ROUTINE; 
    135134 
    136135struct KEY_EVENT_RECORD { 
    137     BOOL bKeyDown; 
    138     WORD wRepeatCount; 
    139     WORD wVirtualKeyCode; 
    140     WORD wVirtualScanCode; 
     136    BOOL bKeyDown; 
     137    WORD wRepeatCount; 
     138    WORD wVirtualKeyCode; 
     139    WORD wVirtualScanCode; 
    141140    union uChar { 
    142141        WCHAR UnicodeChar; 
    143         CHAR AsciiChar; 
     142        CHAR AsciiChar; 
    144143    } 
    145144    DWORD dwControlKeyState; 
  • trunk/win32/windef.d

    r131 r135  
    5252} 
    5353 
    54 alias ushort USHORT; 
    55 alias USHORT* PUSHORT; 
    56 alias uint ULONG; 
    57 alias ULONG* PULONG; 
    58  
    59 alias ushort WORD, ATOM; 
    60 alias ushort* PWORD, LPWORD; 
    6154alias ubyte BYTE; 
    6255alias ubyte* PBYTE, LPBYTE; 
    63 alias uint DWORD, UINT, COLORREF; 
    64 alias uint* PDWORD, LPDWORD, PUINT, LPUINT; 
     56alias ushort USHORT, WORD, ATOM; 
     57alias ushort* PUSHORT, PWORD, LPWORD; 
     58alias uint ULONG, DWORD, UINT, COLORREF; 
     59alias uint* PULONG, PDWORD, LPDWORD, PUINT, LPUINT; 
    6560alias int WINBOOL, BOOL, INT, LONG, HFILE; 
    6661alias int* PWINBOOL, LPWINBOOL, PBOOL, LPBOOL, PINT, LPINT, LPLONG; 
  • trunk/win32/windows.d

    r129 r135  
    2323 
    2424import win32.w32api; 
    25 import win32.windef; 
    26 import win32.wincon; 
    27 import win32.winbase; 
    28 import win32.wingdi; 
    29 import win32.winuser; 
    30 import win32.winnls; 
    31 import win32.winver; 
    32 import win32.winnetwk; 
     25import win32.core; 
    3326 
    3427// We can't use static if for imports, build gets confused. 
     
    3629version (Windows2003) { 
    3730    import win32.winsvc; 
    38 } else version (WindowsXP) {  
     31} else version (WindowsXP) { 
    3932    import win32.winsvc; 
    4033} else version (WindowsNTonly) { 
     
    4235} 
    4336 
    44 //#ifndef WIN32_LEAN_AND_MEAN 
    4537import win32.cderr; 
    4638import win32.dde; 
     
    5951// Select correct version of winsock.  Importing the incorrect 
    6052// module will cause a static assert to prevent problems later on. 
    61 version( Win32_Winsock2
     53version (Win32_Winsock2
    6254    import win32.winsock2; 
    6355else 
     
    7870 
    7971import win32.ole2; 
    80 // #endif /* WIN32_LEAN_AND_MEAN */ 
  • trunk/win32/winerror.d

    r104 r135  
    18661866    E_OUTOFMEMORY                          = 0x8007000E, 
    18671867    E_INVALIDARG                           = 0x80070057, 
    1868     E_UNEXPECTED                          = 0x8000FFFF, 
     1868    E_UNEXPECTED                           = 0x8000FFFF, 
    18691869 
    18701870    CO_E_INIT_TLS                          = 0x80004006, 
  • trunk/win32/wingdi.d

    r134 r135  
    316316 
    317317const DWORD 
    318     BLACKNESS  = 0x42, 
    319     NOTSRCERASE= 0x1100A6, 
    320     NOTSRCCOPY = 0x330008, 
    321     SRCERASE   = 0x440328, 
    322     DSTINVERT  = 0x550009, 
    323     PATINVERT  = 0x5A0049, 
    324     SRCINVERT  = 0x660046, 
    325     SRCAND     = 0x8800C6, 
    326     MERGEPAINT = 0xBB0226, 
    327     MERGECOPY  = 0xC000CA, 
    328     SRCCOPY    = 0xCC0020, 
    329     SRCPAINT   = 0xEE0086, 
    330     PATCOPY    = 0xF00021, 
    331     PATPAINT   = 0xFB0A09, 
    332     WHITENESS  = 0xFF0062; 
     318    BLACKNESS  = 0x42, 
     319    NOTSRCERASE = 0x1100A6, 
     320    NOTSRCCOPY = 0x330008, 
     321    SRCERASE    = 0x440328, 
     322    DSTINVERT  = 0x550009, 
     323    PATINVERT  = 0x5A0049, 
     324    SRCINVERT  = 0x660046, 
     325    SRCAND      = 0x8800C6, 
     326    MERGEPAINT = 0xBB0226, 
     327    MERGECOPY  = 0xC000CA, 
     328    SRCCOPY    = 0xCC0020, 
     329    SRCPAINT    = 0xEE0086, 
     330    PATCOPY    = 0xF00021, 
     331    PATPAINT    = 0xFB0A09, 
     332    WHITENESS  = 0xFF0062; 
    333333 
    334334// GetROP2(), SetROP2() 
     
    712712    PS_ENDCAP_MASK   = 3840, 
    713713    PS_TYPE_MASK     = 983040; 
    714  
    715714 
    716715// --- 
     
    864863    ASPECTX         = 40, 
    865864    ASPECTY         = 42, 
    866     ASPECTXY        = 44,   
     865    ASPECTXY        = 44, 
    867866    LOGPIXELSX      = 88, 
    868867    LOGPIXELSY      = 90, 
     
    10161015enum : int { 
    10171016    GM_COMPATIBLE = 1, 
    1018     GM_ADVANCED   = 2 
     1017    GM_ADVANCED 
    10191018} 
    10201019 
     
    10851084 
    10861085// SetTextAlign() 
    1087 const UINT  
     1086const UINT 
    10881087    TA_TOP        = 0, 
    10891088    TA_CENTER     = 6, 
     
    11471146// Escape() return codes 
    11481147enum : int { 
    1149     SP_ERROR= -1, 
    1150     SP_OUTOFDISK= -4
    1151     SP_OUTOFMEMORY= -5
    1152     SP_USERABORT=-3
    1153     SP_APPABORT=-2 
     1148    SP_ERROR       = -1, 
     1149    SP_APPABORT    = -2
     1150    SP_USERABORT   = -3
     1151    SP_OUTOFDISK   = -4
     1152    SP_OUTOFMEMORY = -5 
    11541153} 
    11551154 
     
    11611160// Escape(), ExtEscape() 
    11621161// Most of the following are deprecated (Win16 only) 
    1163 const int  
     1162enum : int { 
    11641163    NEWFRAME      = 1, 
    11651164    ABORTDOC      = 2, 
     
    12341233    CLOSECHANNEL = 4112, 
    12351234    POSTSCRIPT_PASSTHROUGH  = 4115, 
    1236     ENCAPSULATED_POSTSCRIPT = 4116; 
     1235    ENCAPSULATED_POSTSCRIPT = 4116 
     1236
    12371237 
    12381238// ---- 
     
    12471247 
    12481248const SP_NOTREPORTED=0x4000; 
     1249 
     1250const PR_JOBSTATUS=0; 
    12491251 
    12501252const ASPECT_FILTERING=1; 
     
    16361638 
    16371639struct ABC { 
    1638     int abcA; 
     1640    int abcA; 
    16391641    UINT abcB; 
    1640     int abcC; 
     1642    int abcC; 
    16411643} 
    16421644alias ABC* LPABC; 
     
    16501652 
    16511653struct BITMAP { 
    1652     LONG    bmType; 
    1653     LONG    bmWidth; 
    1654     LONG    bmHeight; 
    1655     LONG    bmWidthBytes; 
    1656     WORD    bmPlanes; 
    1657     WORD    bmBitsPixel; 
    1658     LPVOID  bmBits; 
    1659 
    1660 alias BITMAP* PBITMAP; 
    1661 alias BITMAP* LPBITMAP; 
     1654    LONG   bmType; 
     1655    LONG   bmWidth; 
     1656    LONG   bmHeight; 
     1657    LONG   bmWidthBytes; 
     1658    WORD   bmPlanes; 
     1659    WORD   bmBitsPixel; 
     1660    LPVOID bmBits; 
     1661
     1662alias BITMAP* PBITMAP, LPBITMAP; 
    16621663 
    16631664struct BITMAPCOREHEADER { 
    1664     DWORD  bcSize; 
    1665     WORD   bcWidth; 
    1666     WORD   bcHeight; 
    1667     WORD   bcPlanes; 
    1668     WORD   bcBitCount; 
     1665    DWORD bcSize; 
     1666    WORD  bcWidth; 
     1667    WORD  bcHeight; 
     1668    WORD  bcPlanes; 
     1669    WORD  bcBitCount; 
    16691670} 
    16701671alias BITMAPCOREHEADER* PBITMAPCOREHEADER, LPBITMAPCOREHEADER; 
     
    16801681align(2): 
    16811682struct BITMAPFILEHEADER { 
    1682     WORD   bfType; 
    1683     DWORD  bfSize; 
    1684     WORD   bfReserved1; 
    1685     WORD   bfReserved2; 
    1686     DWORD  bfOffBits; 
    1687 } 
    1688 alias BITMAPFILEHEADER* PBITMAPFILEHEADER, LPBITMAPFILEHEADER; 
     1683    WORD  bfType; 
     1684    DWORD bfSize; 
     1685    WORD  bfReserved1; 
     1686    WORD  bfReserved2; 
     1687    DWORD bfOffBits; 
     1688} 
     1689alias BITMAPFILEHEADER* LPBITMAPFILEHEADER, PBITMAPFILEHEADER; 
    16891690 
    16901691align: 
    16911692 
    16921693struct BITMAPCOREINFO { 
    1693     BITMAPCOREHEADER   bmciHeader; 
    1694     RGBTRIPLE  bmciColors[1]
    1695 }; 
    1696 alias BITMAPCOREINFO* PBITMAPCOREINFO, LPBITMAPCOREINFO; 
     1694    BITMAPCOREHEADER bmciHeader; 
     1695    RGBTRIPLE[1]     bmciColors
     1696} 
     1697alias BITMAPCOREINFO* LPBITMAPCOREINFO, PBITMAPCOREINFO; 
    16971698 
    16981699struct BITMAPINFOHEADER { 
    1699     DWORD  biSize; 
    1700     LONG   biWidth; 
    1701     LONG   biHeight; 
    1702     WORD   biPlanes; 
    1703     WORD   biBitCount; 
    1704     DWORD  biCompression; 
    1705     DWORD  biSizeImage; 
    1706     LONG   biXPelsPerMeter; 
    1707     LONG   biYPelsPerMeter; 
    1708     DWORD  biClrUsed; 
    1709     DWORD  biClrImportant; 
    1710 }; 
    1711  
    1712 alias BITMAPINFOHEADER* PBITMAPINFOHEADER, LPBITMAPINFOHEADER; 
     1700    DWORD biSize; 
     1701    LONG  biWidth; 
     1702    LONG  biHeight; 
     1703    WORD  biPlanes; 
     1704    WORD  biBitCount; 
     1705    DWORD biCompression; 
     1706    DWORD biSizeImage; 
     1707    LONG  biXPelsPerMeter; 
     1708    LONG  biYPelsPerMeter; 
     1709    DWORD biClrUsed; 
     1710    DWORD biClrImportant; 
     1711} 
     1712 
     1713alias BITMAPINFOHEADER* LPBITMAPINFOHEADER, PBITMAPINFOHEADER; 
    17131714 
    17141715struct RGBQUAD { 
    1715     BYTE   rgbBlue; 
    1716     BYTE   rgbGreen; 
    1717     BYTE   rgbRed; 
    1718     BYTE   rgbReserved; 
     1716    BYTE rgbBlue; 
     1717    BYTE rgbGreen; 
     1718    BYTE rgbRed; 
     1719    BYTE rgbReserved; 
    17191720}; 
    17201721alias RGBQUAD* LPRGBQUAD; 
     
    17221723struct BITMAPINFO { 
    17231724    BITMAPINFOHEADER bmiHeader; 
    1724     RGBQUAD bmiColors[1]
     1725    RGBQUAD[1]       bmiColors
    17251726}; 
    17261727alias BITMAPINFO* PBITMAPINFO, LPBITMAPINFO; 
     
    17461747 
    17471748struct BITMAPV4HEADER { 
    1748     DWORD  bV4Size; 
    1749     LONG   bV4Width; 
    1750     LONG   bV4Height; 
    1751     WORD   bV4Planes; 
    1752     WORD   bV4BitCount; 
    1753     DWORD  bV4V4Compression; 
    1754     DWORD  bV4SizeImage; 
    1755     LONG   bV4XPelsPerMeter; 
    1756     LONG   bV4YPelsPerMeter; 
    1757     DWORD  bV4ClrUsed; 
    1758     DWORD  bV4ClrImportant; 
    1759     DWORD  bV4RedMask; 
    1760     DWORD  bV4GreenMask; 
    1761     DWORD  bV4BlueMask; 
    1762     DWORD  bV4AlphaMask; 
    1763     DWORD  bV4CSType; 
     1749    DWORD        bV4Size; 
     1750    LONG         bV4Width; 
     1751    LONG         bV4Height; 
     1752    WORD         bV4Planes; 
     1753    WORD         bV4BitCount; 
     1754    DWORD        bV4V4Compression; 
     1755    DWORD        bV4SizeImage; 
     1756    LONG         bV4XPelsPerMeter; 
     1757    LONG         bV4YPelsPerMeter; 
     1758    DWORD        bV4ClrUsed; 
     1759    DWORD        bV4ClrImportant; 
     1760    DWORD        bV4RedMask; 
     1761    DWORD        bV4GreenMask; 
     1762    DWORD        bV4BlueMask; 
     1763    DWORD        bV4AlphaMask; 
     1764    DWORD        bV4CSType; 
    17641765    CIEXYZTRIPLE bV4Endpoints; 
    1765     DWORD   bV4GammaRed; 
    1766     DWORD   bV4GammaGreen; 
    1767     DWORD   bV4GammaBlue; 
    1768 
    1769 alias BITMAPV4HEADER* LPBITMAPV4HEADER; 
    1770 alias BITMAPV4HEADER* PBITMAPV4HEADER; 
     1766    DWORD        bV4GammaRed; 
     1767    DWORD        bV4GammaGreen; 
     1768    DWORD        bV4GammaBlue; 
     1769
     1770alias BITMAPV4HEADER* LPBITMAPV4HEADER, PBITMAPV4HEADER; 
    17711771 
    17721772struct FONTSIGNATURE { 
    1773     DWORD  fsUsb[4]
    1774     DWORD  fsCsb[2]
     1773    DWORD[4] fsUsb
     1774    DWORD[2] fsCsb
    17751775} 
    17761776alias FONTSIGNATURE* LPFONTSIGNATURE; 
     
    17831783alias CHARSETINFO* LPCHARSETINFO; 
    17841784 
    1785 struct COLORADJUSTMENT { 
    1786     WORD   caSize; 
    1787     WORD   caFlags; 
    1788     WORD   caIlluminantIndex; 
    1789     WORD   caRedGamma; 
    1790     WORD   caGreenGamma; 
    1791     WORD   caBlueGamma; 
    1792     WORD   caReferenceBlack; 
    1793     WORD   caReferenceWhite; 
    1794     SHORT  caContrast; 
    1795     SHORT  caBrightness; 
    1796     SHORT  caColorfulness; 
    1797     SHORT  caRedGreenTint; 
     1785struct COLORADJUSTMENT { 
     1786    WORD  caSize; 
     1787    WORD  caFlags; 
     1788    WORD  caIlluminantIndex; 
     1789    WORD  caRedGamma; 
     1790    WORD  caGreenGamma; 
     1791    WORD  caBlueGamma; 
     1792    WORD  caReferenceBlack; 
     1793    WORD  caReferenceWhite; 
     1794    SHORT caContrast; 
     1795    SHORT caBrightness; 
     1796    SHORT caColorfulness; 
     1797    SHORT caRedGreenTint; 
    17981798} 
    17991799alias COLORADJUSTMENT* LPCOLORADJUSTMENT; 
     
    19471947 
    19481948struct LOGFONTA { 
    1949     LONG    lfHeight; 
    1950     LONG    lfWidth; 
    1951     LONG    lfEscapement; 
    1952     LONG    lfOrientation; 
    1953     LONG    lfWeight; 
    1954     BYTE    lfItalic; 
    1955     BYTE    lfUnderline; 
    1956     BYTE    lfStrikeOut; 
    1957     BYTE    lfCharSet; 
    1958     BYTE    lfOutPrecision; 
    1959     BYTE    lfClipPrecision; 
    1960     BYTE    lfQuality; 
    1961     BYTE    lfPitchAndFamily; 
    1962     CHAR    lfFaceName[LF_FACESIZE]; 
    1963 
    1964 alias LOGFONTA* PLOGFONTA; 
    1965 alias LOGFONTA* LPLOGFONTA; 
     1949    LONG lfHeight; 
     1950    LONG lfWidth; 
     1951    LONG lfEscapement; 
     1952    LONG lfOrientation; 
     1953    LONG lfWeight; 
     1954    BYTE lfItalic; 
     1955    BYTE lfUnderline; 
     1956    BYTE lfStrikeOut; 
     1957    BYTE lfCharSet; 
     1958    BYTE lfOutPrecision; 
     1959    BYTE lfClipPrecision; 
     1960    BYTE lfQuality; 
     1961    BYTE lfPitchAndFamily; 
     1962    CHAR[LF_FACESIZE] lfFaceName; 
     1963
     1964alias LOGFONTA* PLOGFONTA, LPLOGFONTA; 
    19661965 
    19671966struct LOGFONTW { 
    1968     LONG   lfHeight; 
    1969     LONG   lfWidth; 
    1970     LONG   lfEscapement; 
    1971     LONG   lfOrientation; 
    1972     LONG   lfWeight; 
    1973     BYTE   lfItalic; 
    1974     BYTE   lfUnderline; 
    1975     BYTE   lfStrikeOut; 
    1976     BYTE   lfCharSet; 
    1977     BYTE   lfOutPrecision; 
    1978     BYTE   lfClipPrecision; 
    1979     BYTE   lfQuality; 
    1980     BYTE   lfPitchAndFamily; 
    1981     WCHAR  lfFaceName[LF_FACESIZE]
     1967    LONG lfHeight; 
     1968    LONG lfWidth; 
     1969    LONG lfEscapement; 
     1970    LONG lfOrientation; 
     1971    LONG lfWeight; 
     1972    BYTE lfItalic; 
     1973    BYTE lfUnderline; 
     1974    BYTE lfStrikeOut; 
     1975    BYTE lfCharSet; 
     1976    BYTE lfOutPrecision; 
     1977    BYTE lfClipPrecision; 
     1978    BYTE lfQuality; 
     1979    BYTE lfPitchAndFamily; 
     1980    WCHAR[LF_FACESIZE] lfFaceName
    19821981} 
    19831982alias LOGFONTW* PLOGFONTW, LPLOGFONTW; 
    19841983 
    19851984struct EXTLOGFONTA { 
    1986     LOGFONTA   elfLogFont; 
    1987     BYTE   elfFullName[LF_FULLFACESIZE]
    1988     BYTE   elfStyle[LF_FACESIZE]
    1989     DWORD  elfVersion; 
    1990     DWORD  elfStyleSize; 
    1991     DWORD  elfMatch; 
    1992     DWORD  elfReserved; 
    1993     BYTE   elfVendorId[ELF_VENDOR_SIZE]
    1994     DWORD  elfCulture; 
    1995     PANOSE elfPanose; 
     1985    LOGFONTA              elfLogFont; 
     1986    BYTE[LF_FULLFACESIZE] elfFullName
     1987    BYTE[LF_FACESIZE]     elfStyle
     1988    DWORD                 elfVersion; 
     1989    DWORD                 elfStyleSize; 
     1990    DWORD                 elfMatch; 
     1991    DWORD                 elfReserved; 
     1992    BYTE[ELF_VENDOR_SIZE] elfVendorId
     1993    DWORD                 elfCulture; 
     1994    PANOSE                elfPanose; 
    19961995} 
    19971996alias EXTLOGFONTA* PEXTLOGFONTA, LPEXTLOGFONTA; 
    19981997 
    19991998struct EXTLOGFONTW { 
    2000     LOGFONTW   elfLogFont; 
    2001     WCHAR  elfFullName[LF_FULLFACESIZE]
    2002     WCHAR  elfStyle[LF_FACESIZE]
    2003     DWORD  elfVersion; 
    2004     DWORD  elfStyleSize; 
    2005     DWORD  elfMatch; 
    2006     DWORD  elfReserved; 
    2007     BYTE   elfVendorId[ELF_VENDOR_SIZE]
    2008     DWORD  elfCulture; 
    2009     PANOSE elfPanose; 
     1999    LOGFONTW               elfLogFont; 
     2000    WCHAR[LF_FULLFACESIZE] elfFullName
     2001    WCHAR[LF_FACESIZE]     elfStyle
     2002    DWORD                  elfVersion; 
     2003    DWORD                  elfStyleSize; 
     2004    DWORD                  elfMatch; 
     2005    DWORD                  elfReserved; 
     2006    BYTE[ELF_VENDOR_SIZE]  elfVendorId
     2007    DWORD                  elfCulture; 
     2008    PANOSE                 elfPanose; 
    20102009} 
    20112010alias EXTLOGFONTW* PEXTLOGFONTW, LPEXTLOGFONTW; 
    20122011 
    20132012struct LOGPEN { 
    2014     UINT lopnStyle; 
    2015     POINT lopnWidth; 
     2013    UINT     lopnStyle; 
     2014    POINT    lopnWidth; 
    20162015    COLORREF lopnColor; 
    20172016} 
     
    20272026 
    20282027struct EMRANGLEARC { 
    2029     EMR emr; 
     2028    EMR    emr; 
    20302029    POINTL ptlCenter; 
    2031     DWORD nRadius; 
    2032     FLOAT eStartAngle; 
    2033     FLOAT eSweepAngle; 
     2030    DWORD nRadius; 
     2031    FLOAT eStartAngle; 
     2032    FLOAT eSweepAngle; 
    20342033} 
    20352034alias EMRANGLEARC* PEMRANGLEARC; 
    20362035 
    20372036struct EMRARC { 
    2038     EMR emr; 
    2039     RECTL rclBox; 
     2037    EMR    emr; 
     2038    RECTL rclBox; 
    20402039    POINTL ptlStart; 
    20412040    POINTL ptlEnd; 
    20422041} 
    2043 alias EMRARC* PEMRARC; 
    2044 typedef EMRARC EMRARCTO; 
    2045 alias EMRARC* PEMRARCTO; 
    2046 typedef EMRARC EMRCHORD; 
    2047 alias EMRARC* PEMRCHORD; 
    2048 typedef EMRARC EMRPIE; 
    2049 alias EMRARC* PEMRPIE; 
    2050  
    2051 struct  XFORM { 
     2042alias EMRARC EMRARCTO, EMRCHORD, EMRPIE; 
     2043alias EMRARC* PEMRARC, PEMRARCTO, PEMRCHORD, PEMRPIE; 
     2044 
     2045struct XFORM { 
    20522046    FLOAT eM11; 
    20532047    FLOAT eM12; 
     
    20572051    FLOAT eDy; 
    20582052} 
    2059 alias XFORM* PXFORM; 
    2060 alias XFORM* LPXFORM; 
     2053alias XFORM* PXFORM, LPXFORM; 
    20612054 
    20622055struct EMRBITBLT { 
    2063     EMR emr; 
    2064     RECTL rclBounds; 
    2065     LONG xDest; 
    2066     LONG yDest; 
    2067     LONG cxDest; 
    2068     LONG cyDest; 
    2069     DWORD dwRop; 
    2070     LONG xSrc; 
    2071     LONG ySrc; 
    2072     XFORM xformSrc; 
     2056    EMR      emr; 
     2057    RECTL    rclBounds; 
     2058    LONG     xDest; 
     2059    LONG     yDest; 
     2060    LONG     cxDest; 
     2061    LONG     cyDest; 
     2062    DWORD    dwRop; 
     2063    LONG     xSrc; 
     2064    LONG     ySrc; 
     2065    XFORM    xformSrc; 
    20732066    COLORREF crBkColorSrc; 
    2074     DWORD iUsageSrc; 
    2075     DWORD offBmiSrc; 
    2076     DWORD offBitsSrc; 
    2077     DWORD cbBitsSrc; 
     2067    DWORD    iUsageSrc; 
     2068    DWORD    offBmiSrc; 
     2069    DWORD    offBitsSrc; 
     2070    DWORD    cbBitsSrc; 
    20782071} 
    20792072alias EMRBITBLT* PEMRBITBLT; 
    20802073 
    20812074struct LOGBRUSH { 
    2082     UINT lbStyle; 
     2075    UINT     lbStyle; 
    20832076    COLORREF lbColor; 
    2084     LONG lbHatch; 
    2085 
    2086 alias LOGBRUSH* PLOGBRUSH, LPLOGBRUSH; 
    2087 typedef LOGBRUSH PATTERN; 
    2088 alias LOGBRUSH* PPATTERN, LPPATTERN; 
     2077    LONG     lbHatch; 
     2078
     2079alias LOGBRUSH PATTERN; 
     2080alias LOGBRUSH* PLOGBRUSH, LPLOGBRUSH, PPATTERN, LPPATTERN; 
    20892081 
    20902082struct EMRCREATEBRUSHINDIRECT { 
    2091     EMR emr; 
    2092     DWORD ihBrush; 
     2083    EMR      emr; 
     2084    DWORD    ihBrush; 
    20932085    LOGBRUSH lb; 
    20942086} 
    20952087alias EMRCREATEBRUSHINDIRECT* PEMRCREATEBRUSHINDIRECT; 
    20962088 
    2097 alias LONG LCSCSTYPE; 
    2098 alias LONG LCSGAMUTMATCH; 
     2089alias LONG LCSCSTYPE, LCSGAMUTMATCH; 
    20992090 
    21002091struct LOGCOLORSPACEA { 
     
    22722263    EMRTEXT emrtext; 
    22732264} 
    2274 alias EMREXTTEXTOUTA* PEMREXTTEXTOUTA; 
    2275  
    22762265alias EMREXTTEXTOUTA EMREXTTEXTOUTW; 
    2277 alias EMREXTTEXTOUTA* PEMREXTTEXTOUTW; 
     2266alias EMREXTTEXTOUTA* PEMREXTTEXTOUTA, PEMREXTTEXTOUTW; 
    22782267 
    22792268struct EMRFILLPATH { 
     
    28872876        USHORT cGlyphs; 
    28882877    } 
    2889     alias WCRANGE* PWCRANGE; 
    2890     alias WCRANGE* LPWCRANGE; 
     2878    alias WCRANGE* PWCRANGE, LPWCRANGE; 
    28912879 
    28922880    struct GLYPHSET { 
  • trunk/win32/winnt.d

    r131 r135  
    296296const TIMER_ALL_ACCESS=(STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|TIMER_QUERY_STATE|TIMER_MODIFY_STATE); 
    297297/* 
    298  * To prevent gcc compiler warnings, bracket these defines when initialising 
    299  * a  SID_IDENTIFIER_AUTHORITY, eg. 
    300  * SID_IDENTIFIER_AUTHORITY aNullSidAuthority = {SECURITY_NULL_SID_AUTHORITY}; 
     298* To prevent gcc compiler warnings, bracket these defines when initialising 
     299* a  SID_IDENTIFIER_AUTHORITY, eg. 
     300* SID_IDENTIFIER_AUTHORITY aNullSidAuthority = {SECURITY_NULL_SID_AUTHORITY}; 
    301301 */ 
    302302 
     
    11361136    SecurityDelegation 
    11371137} 
    1138 alias SECURITY_IMPERSONATION_LEVEL * PSECURITY_IMPERSONATION_LEVEL; 
     1138alias SECURITY_IMPERSONATION_LEVEL* PSECURITY_IMPERSONATION_LEVEL; 
    11391139alias BOOLEAN SECURITY_CONTEXT_TRACKING_MODE; 
    1140 alias SECURITY_CONTEXT_TRACKING_MODE * PSECURITY_CONTEXT_TRACKING_MODE; 
     1140alias SECURITY_CONTEXT_TRACKING_MODE* PSECURITY_CONTEXT_TRACKING_MODE; 
    11411141 
    11421142 
     
    13781378    ubyte  Data4[8]; 
    13791379} 
    1380 alias GUID * REFGUID, LPGUID; 
     1380alias GUID* REFGUID, LPGUID; 
    13811381*/ 
    13821382const LUID SYSTEM_LUID = { QuadPart:999 }; 
     
    13881388    ACCESS_MASK GenericAll; 
    13891389} 
    1390 alias GENERIC_MAPPING * PGENERIC_MAPPING; 
     1390alias GENERIC_MAPPING* PGENERIC_MAPPING; 
    13911391 
    13921392struct ACE_HEADER { 
     
    13951395    WORD AceSize; 
    13961396} 
    1397 alias ACE_HEADER * PACE_HEADER; 
     1397alias ACE_HEADER* PACE_HEADER; 
    13981398 
    13991399struct ACCESS_ALLOWED_ACE { 
     
    14021402    DWORD SidStart; 
    14031403} 
    1404 alias ACCESS_ALLOWED_ACE * PACCESS_ALLOWED_ACE; 
     1404alias ACCESS_ALLOWED_ACE* PACCESS_ALLOWED_ACE; 
    14051405 
    14061406struct ACCESS_DENIED_ACE { 
     
    14091409    DWORD SidStart; 
    14101410} 
    1411 alias ACCESS_DENIED_ACE * PACCESS_DENIED_ACE; 
     1411alias ACCESS_DENIED_ACE* PACCESS_DENIED_ACE; 
    14121412 
    14131413struct SYSTEM_AUDIT_ACE { 
     
    14231423    DWORD SidStart; 
    14241424} 
    1425 alias SYSTEM_ALARM_ACE * PSYSTEM_ALARM_ACE; 
     1425alias SYSTEM_ALARM_ACE* PSYSTEM_ALARM_ACE; 
    14261426 
    14271427struct ACCESS_ALLOWED_OBJECT_ACE { 
     
    14331433    DWORD SidStart; 
    14341434} 
    1435 alias ACCESS_ALLOWED_OBJECT_ACE * PACCESS_ALLOWED_OBJECT_ACE; 
     1435alias ACCESS_ALLOWED_OBJECT_ACE* PACCESS_ALLOWED_OBJECT_ACE; 
    14361436 
    14371437struct ACCESS_DENIED_OBJECT_ACE { 
     
    14431443    DWORD SidStart; 
    14441444} 
    1445 alias ACCESS_DENIED_OBJECT_ACE * PACCESS_DENIED_OBJECT_ACE; 
     1445alias ACCESS_DENIED_OBJECT_ACE* PACCESS_DENIED_OBJECT_ACE; 
    14461446 
    14471447struct SYSTEM_AUDIT_OBJECT_ACE { 
     
    14531453    DWORD SidStart; 
    14541454} 
    1455 alias SYSTEM_AUDIT_OBJECT_ACE * PSYSTEM_AUDIT_OBJECT_ACE; 
     1455alias SYSTEM_AUDIT_OBJECT_ACE* PSYSTEM_AUDIT_OBJECT_ACE; 
    14561456 
    14571457struct SYSTEM_ALARM_OBJECT_ACE { 
     
    14631463    DWORD SidStart; 
    14641464} 
    1465 alias SYSTEM_ALARM_OBJECT_ACE * PSYSTEM_ALARM_OBJECT_ACE; 
     1465alias SYSTEM_ALARM_OBJECT_ACE* PSYSTEM_ALARM_OBJECT_ACE; 
    14661466 
    14671467struct ACL { 
     
    14721472    WORD Sbz2; 
    14731473} 
    1474 alias ACL * PACL; 
     1474alias ACL* PACL; 
    14751475 
    14761476struct ACL_REVISION_INFORMATION { 
     
    14981498 
    14991499    struct FLOATING_SAVE_AREA { 
    1500         DWORD  ControlWord; 
    1501         DWORD  StatusWord; 
    1502         DWORD  TagWord; 
    1503         DWORD  ErrorOffset; 
    1504         DWORD  ErrorSelector; 
    1505         DWORD  DataOffset; 
    1506         DWORD  DataSelector; 
    1507         BYTE   RegisterArea[80]
    1508         DWORD  Cr0NpxState; 
     1500        DWORD    ControlWord; 
     1501        DWORD    StatusWord; 
     1502        DWORD    TagWord; 
     1503        DWORD    ErrorOffset; 
     1504        DWORD    ErrorSelector; 
     1505        DWORD    DataOffset; 
     1506        DWORD    DataSelector; 
     1507        BYTE[80] RegisterArea
     1508        DWORD    Cr0NpxState; 
    15091509    } 
    15101510 
    15111511    struct CONTEXT { 
    1512         DWORD  ContextFlags; 
    1513         DWORD  Dr0; 
    1514         DWORD  Dr1; 
    1515         DWORD  Dr2; 
    1516         DWORD  Dr3; 
    1517         DWORD  Dr6; 
    1518         DWORD  Dr7; 
     1512        DWORD ContextFlags; 
     1513        DWORD Dr0; 
     1514        DWORD Dr1; 
     1515        DWORD Dr2; 
     1516        DWORD Dr3; 
     1517        DWORD Dr6; 
     1518        DWORD Dr7; 
    15191519        FLOATING_SAVE_AREA FloatSave; 
    1520         DWORD  SegGs; 
    1521         DWORD  SegFs; 
    1522         DWORD  SegEs; 
    1523         DWORD  SegDs; 
    1524         DWORD  Edi; 
    1525         DWORD  Esi; 
    1526         DWORD  Ebx; 
    1527         DWORD  Edx; 
    1528         DWORD  Ecx; 
    1529         DWORD  Eax; 
    1530         DWORD  Ebp; 
    1531         DWORD  Eip; 
    1532         DWORD  SegCs; 
    1533         DWORD  EFlags; 
    1534         DWORD  Esp; 
    1535         DWORD  SegSs; 
    1536         BYTE   ExtendedRegisters[MAXIMUM_SUPPORTED_EXTENSION]
     1520        DWORD SegGs; 
     1521        DWORD SegFs; 
     1522        DWORD SegEs; 
     1523        DWORD SegDs; 
     1524        DWORD Edi; 
     1525        DWORD Esi; 
     1526        DWORD Ebx; 
     1527        DWORD Edx; 
     1528        DWORD Ecx; 
     1529        DWORD Eax; 
     1530        DWORD Ebp; 
     1531        DWORD Eip; 
     1532        DWORD SegCs; 
     1533        DWORD EFlags; 
     1534        DWORD Esp; 
     1535        DWORD SegSs; 
     1536        BYTE[MAXIMUM_SUPPORTED_EXTENSION] ExtendedRegisters
    15371537    } 
    15381538 
     
    15441544 
    15451545 
    1546 alias CONTEXT * PCONTEXT, LPCONTEXT; 
     1546alias CONTEXT* PCONTEXT, LPCONTEXT; 
    15471547 
    15481548struct EXCEPTION_RECORD { 
     
    15541554    DWORD ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]; 
    15551555} 
    1556 alias EXCEPTION_RECORD * PEXCEPTION_RECORD, LPEXCEPTION_RECORD; 
     1556alias EXCEPTION_RECORD* PEXCEPTION_RECORD, LPEXCEPTION_RECORD; 
    15571557 
    15581558struct EXCEPTION_POINTERS { 
     
    15601560    PCONTEXT ContextRecord; 
    15611561} 
    1562 alias EXCEPTION_POINTERS * PEXCEPTION_POINTERS, LPEXCEPTION_POINTERS; 
     1562alias EXCEPTION_POINTERS* PEXCEPTION_POINTERS, LPEXCEPTION_POINTERS; 
    15631563 
    15641564union LARGE_INTEGER { 
     
    15691569    long QuadPart; 
    15701570} 
    1571 alias LARGE_INTEGER * PLARGE_INTEGER; 
     1571alias LARGE_INTEGER* PLARGE_INTEGER; 
    15721572 
    15731573union ULARGE_INTEGER { 
     
    15781578    ulong QuadPart; 
    15791579} 
    1580 alias ULARGE_INTEGER * PULARGE_INTEGER; 
     1580alias ULARGE_INTEGER* PULARGE_INTEGER; 
    15811581 
    15821582alias LARGE_INTEGER LUID; 
    1583 alias LUID * PLUID; 
     1583alias LUID* PLUID; 
    15841584 
    15851585align(4): 
     
    15881588    DWORD  Attributes; 
    15891589} 
    1590 alias LUID_AND_ATTRIBUTES * PLUID_AND_ATTRIBUTES; 
     1590alias LUID_AND_ATTRIBUTES* PLUID_AND_ATTRIBUTES; 
    15911591 
    15921592align: 
    15931593 
    15941594alias LUID_AND_ATTRIBUTES[ANYSIZE_ARRAY] LUID_AND_ATTRIBUTES_ARRAY; 
    1595 alias LUID_AND_ATTRIBUTES_ARRAY * PLUID_AND_ATTRIBUTES_ARRAY; 
     1595alias LUID_AND_ATTRIBUTES_ARRAY* PLUID_AND_ATTRIBUTES_ARRAY; 
    15961596 
    15971597struct PRIVILEGE_SET { 
     
    16001600    LUID_AND_ATTRIBUTES Privilege[ANYSIZE_ARRAY]; 
    16011601} 
    1602 alias PRIVILEGE_SET * PPRIVILEGE_SET; 
     1602alias PRIVILEGE_SET* PPRIVILEGE_SET; 
    16031603 
    16041604struct SECURITY_ATTRIBUTES { 
     
    16071607    BOOL bInheritHandle; 
    16081608} 
    1609 alias SECURITY_ATTRIBUTES * PSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES; 
     1609alias SECURITY_ATTRIBUTES* PSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES; 
    16101610 
    16111611struct SECURITY_QUALITY_OF_SERVICE { 
     
    16151615    BOOLEAN EffectiveOnly; 
    16161616} 
    1617 alias SECURITY_QUALITY_OF_SERVICE * PSECURITY_QUALITY_OF_SERVICE; 
     1617alias SECURITY_QUALITY_OF_SERVICE* PSECURITY_QUALITY_OF_SERVICE; 
    16181618 
    16191619alias PVOID PACCESS_TOKEN; 
     
    16251625    SECURITY_IMPERSONATION_LEVEL Level; 
    16261626} 
    1627 alias SE_IMPERSONATION_STATE * PSE_IMPERSONATION_STATE; 
     1627alias SE_IMPERSONATION_STATE* PSE_IMPERSONATION_STATE; 
    16281628 
    16291629struct SID_IDENTIFIER_AUTHORITY { 
    16301630    BYTE Value[6]; 
    16311631} 
    1632 alias SID_IDENTIFIER_AUTHORITY * PSID_IDENTIFIER_AUTHORITY, LPSID_IDENTIFIER_AUTHORITY; 
     1632alias SID_IDENTIFIER_AUTHORITY* PSID_IDENTIFIER_AUTHORITY, LPSID_IDENTIFIER_AUTHORITY; 
    16331633 
    16341634alias PVOID PSID; 
     
    16401640    DWORD SubAuthority[ANYSIZE_ARRAY]; 
    16411641} 
    1642 alias SID * PISID; 
     1642alias SID* PISID; 
    16431643 
    16441644struct SID_AND_ATTRIBUTES { 
     
    16461646    DWORD Attributes; 
    16471647} 
    1648 alias SID_AND_ATTRIBUTES * PSID_AND_ATTRIBUTES; 
     1648alias SID_AND_ATTRIBUTES* PSID_AND_ATTRIBUTES; 
    16491649alias SID_AND_ATTRIBUTES[ANYSIZE_ARRAY] SID_AND_ATTRIBUTES_ARRAY; 
    1650 alias SID_AND_ATTRIBUTES_ARRAY * PSID_AND_ATTRIBUTES_ARRAY; 
     1650alias SID_AND_ATTRIBUTES_ARRAY* PSID_AND_ATTRIBUTES_ARRAY; 
    16511651 
    16521652struct TOKEN_SOURCE { 
     
    16541654    LUID SourceIdentifier; 
    16551655} 
    1656 alias TOKEN_SOURCE * PTOKEN_SOURCE; 
     1656alias TOKEN_SOURCE* PTOKEN_SOURCE; 
    16571657 
    16581658struct TOKEN_CONTROL { 
     
    16621662    TOKEN_SOURCE TokenSource; 
    16631663} 
    1664 alias TOKEN_CONTROL * PTOKEN_CONTROL; 
     1664alias TOKEN_CONTROL* PTOKEN_CONTROL; 
    16651665 
    16661666struct TOKEN_DEFAULT_DACL { 
    16671667    PACL DefaultDacl; 
    16681668} 
    1669 alias TOKEN_DEFAULT_DACL * PTOKEN_DEFAULT_DACL; 
     1669alias TOKEN_DEFAULT_DACL* PTOKEN_DEFAULT_DACL; 
    16701670 
    16711671struct TOKEN_GROUPS { 
     
    16731673    SID_AND_ATTRIBUTES Groups[ANYSIZE_ARRAY]; 
    16741674} 
    1675 alias TOKEN_GROUPS * PTOKEN_GROUPS, LPTOKEN_GROUPS; 
     1675alias TOKEN_GROUPS* PTOKEN_GROUPS, LPTOKEN_GROUPS; 
    16761676 
    16771677struct TOKEN_OWNER { 
    16781678    PSID Owner; 
    16791679} 
    1680 alias TOKEN_OWNER * PTOKEN_OWNER; 
     1680alias TOKEN_OWNER* PTOKEN_OWNER; 
    16811681 
    16821682struct TOKEN_PRIMARY_GROUP { 
    16831683    PSID PrimaryGroup; 
    16841684} 
    1685 alias TOKEN_PRIMARY_GROUP * PTOKEN_PRIMARY_GROUP; 
     1685alias TOKEN_PRIMARY_GROUP* PTOKEN_PRIMARY_GROUP; 
    16861686 
    16871687struct TOKEN_PRIVILEGES { 
     
    16891689    LUID_AND_ATTRIBUTES Privileges[ANYSIZE_ARRAY]; 
    16901690} 
    1691 alias TOKEN_PRIVILEGES * PTOKEN_PRIVILEGES, LPTOKEN_PRIVILEGES; 
     1691alias TOKEN_PRIVILEGES* PTOKEN_PRIVILEGES, LPTOKEN_PRIVILEGES; 
    16921692 
    16931693enum TOKEN_TYPE { 
     
    16951695    TokenImpersonation 
    16961696} 
    1697 alias TOKEN_TYPE * PTOKEN_TYPE; 
     1697alias TOKEN_TYPE* PTOKEN_TYPE; 
    16981698 
    16991699struct TOKEN_STATISTICS { 
     
    17091709    LUID ModifiedId; 
    17101710} 
    1711 alias TOKEN_STATISTICS * PTOKEN_STATISTICS; 
     1711alias TOKEN_STATISTICS* PTOKEN_STATISTICS; 
    17121712 
    17131713struct TOKEN_USER { 
     
    17171717 
    17181718alias DWORD SECURITY_INFORMATION; 
    1719 alias SECURITY_INFORMATION * PSECURITY_INFORMATION; 
     1719alias SECURITY_INFORMATION* PSECURITY_INFORMATION; 
    17201720alias WORD SECURITY_DESCRIPTOR_CONTROL; 
    1721 alias SECURITY_DESCRIPTOR_CONTROL * PSECURITY_DESCRIPTOR_CONTROL; 
     1721alias SECURITY_DESCRIPTOR_CONTROL* PSECURITY_DESCRIPTOR_CONTROL; 
    17221722 
    17231723struct SECURITY_DESCRIPTOR { 
     
    17301730    PACL Dacl; 
    17311731} 
    1732 alias SECURITY_DESCRIPTOR * PSECURITY_DESCRIPTOR, PISECURITY_DESCRIPTOR; 
     1732alias SECURITY_DESCRIPTOR* PSECURITY_DESCRIPTOR, PISECURITY_DESCRIPTOR; 
    17331733 
    17341734enum TOKEN_INFORMATION_CLASS { 
     
    17631763    SidTypeComputer 
    17641764} 
    1765 alias SID_NAME_USE * PSID_NAME_USE; 
     1765alias SID_NAME_USE* PSID_NAME_USE; 
    17661766 
    17671767struct QUOTA_LIMITS { 
     
    17731773    LARGE_INTEGER TimeLimit; 
    17741774} 
    1775 alias QUOTA_LIMITS * PQUOTA_LIMITS; 
     1775alias QUOTA_LIMITS* PQUOTA_LIMITS; 
    17761776 
    17771777struct IO_COUNTERS { 
     
    17831783    ULONGLONG OtherTransferCount; 
    17841784} 
    1785 alias IO_COUNTERS * PIO_COUNTERS; 
     1785alias IO_COUNTERS* PIO_COUNTERS; 
    17861786 
    17871787struct FILE_NOTIFY_INFORMATION { 
     
    17911791    WCHAR FileName[1]; 
    17921792} 
    1793 alias FILE_NOTIFY_INFORMATION * PFILE_NOTIFY_INFORMATION; 
     1793alias FILE_NOTIFY_INFORMATION* PFILE_NOTIFY_INFORMATION; 
    17941794 
    17951795struct TAPE_ERASE { 
     
    17971797    BOOLEAN Immediate; 
    17981798} 
    1799 alias TAPE_ERASE * PTAPE_ERASE; 
     1799alias TAPE_ERASE* PTAPE_ERASE; 
    18001800 
    18011801struct TAPE_GET_DRIVE_PARAMETERS { 
     
    18121812    DWORD EOTWarningZoneSize; 
    18131813} 
    1814 alias TAPE_GET_DRIVE_PARAMETERS * PTAPE_GET_DRIVE_PARAMETERS; 
     1814alias TAPE_GET_DRIVE_PARAMETERS* PTAPE_GET_DRIVE_PARAMETERS; 
    18151815 
    18161816struct TAPE_GET_MEDIA_PARAMETERS { 
     
    18211821    BOOLEAN WriteProtected; 
    18221822} 
    1823 alias TAPE_GET_MEDIA_PARAMETERS * PTAPE_GET_MEDIA_PARAMETERS; 
     1823alias TAPE_GET_MEDIA_PARAMETERS* PTAPE_GET_MEDIA_PARAMETERS; 
    18241824 
    18251825struct TAPE_GET_POSITION { 
     
    18291829    ULONG OffsetHigh; 
    18301830} 
    1831 alias TAPE_GET_POSITION * PTAPE_GET_POSITION; 
     1831alias TAPE_GET_POSITION* PTAPE_GET_POSITION; 
    18321832 
    18331833struct TAPE_PREPARE { 
     
    18351835    BOOLEAN Immediate; 
    18361836} 
    1837 alias TAPE_PREPARE * PTAPE_PREPARE; 
     1837alias TAPE_PREPARE* PTAPE_PREPARE; 
    18381838 
    18391839struct TAPE_SET_DRIVE_PARAMETERS { 
     
    18441844    ULONG EOTWarningZoneSize; 
    18451845} 
    1846 alias TAPE_SET_DRIVE_PARAMETERS * PTAPE_SET_DRIVE_PARAMETERS; 
     1846alias TAPE_SET_DRIVE_PARAMETERS* PTAPE_SET_DRIVE_PARAMETERS; 
    18471847 
    18481848struct TAPE_SET_MEDIA_PARAMETERS { 
    18491849    ULONG BlockSize; 
    18501850} 
    1851 alias TAPE_SET_MEDIA_PARAMETERS * PTAPE_SET_MEDIA_PARAMETERS; 
     1851alias TAPE_SET_MEDIA_PARAMETERS* PTAPE_SET_MEDIA_PARAMETERS; 
    18521852 
    18531853struct TAPE_SET_POSITION { 
     
    18571857    BOOLEAN Immediate; 
    18581858} 
    1859 alias TAPE_SET_POSITION * PTAPE_SET_POSITION; 
     1859alias TAPE_SET_POSITION* PTAPE_SET_POSITION; 
    18601860 
    18611861struct TAPE_WRITE_MARKS { 
     
    18641864    BOOLEAN Immediate; 
    18651865} 
    1866 alias TAPE_WRITE_MARKS * PTAPE_WRITE_MARKS; 
     1866alias TAPE_WRITE_MARKS* PTAPE_WRITE_MARKS; 
    18671867 
    18681868struct TAPE_CREATE_PARTITION { 
     
    18711871    DWORD Size; 
    18721872} 
    1873 alias TAPE_CREATE_PARTITION * PTAPE_CREATE_PARTITION; 
     1873alias TAPE_CREATE_PARTITION* PTAPE_CREATE_PARTITION; 
    18741874 
    18751875struct MEMORY_BASIC_INFORMATION { 
     
    18821882    DWORD Type; 
    18831883} 
    1884 alias MEMORY_BASIC_INFORMATION * PMEMORY_BASIC_INFORMATION; 
     1884alias MEMORY_BASIC_INFORMATION* PMEMORY_BASIC_INFORMATION; 
    18851885 
    18861886struct MESSAGE_RESOURCE_ENTRY { 
     
    18891889    BYTE Text[1]; 
    18901890} 
    1891 alias MESSAGE_RESOURCE_ENTRY * PMESSAGE_RESOURCE_ENTRY; 
     1891alias MESSAGE_RESOURCE_ENTRY* PMESSAGE_RESOURCE_ENTRY; 
    18921892 
    18931893struct MESSAGE_RESOURCE_BLOCK { 
     
    18961896    DWORD OffsetToEntries; 
    18971897} 
    1898 alias MESSAGE_RESOURCE_BLOCK * PMESSAGE_RESOURCE_BLOCK; 
     1898alias MESSAGE_RESOURCE_BLOCK* PMESSAGE_RESOURCE_BLOCK; 
    18991899 
    19001900struct MESSAGE_RESOURCE_DATA { 
     
    19021902    MESSAGE_RESOURCE_BLOCK Blocks[1]; 
    19031903} 
    1904 alias MESSAGE_RESOURCE_DATA * PMESSAGE_RESOURCE_DATA; 
     1904alias MESSAGE_RESOURCE_DATA* PMESSAGE_RESOURCE_DATA; 
    19051905 
    19061906struct LIST_ENTRY { 
     
    19081908    LIST_ENTRY *Blink; 
    19091909} 
    1910 alias LIST_ENTRY * PLIST_ENTRY; 
     1910alias LIST_ENTRY* PLIST_ENTRY; 
    19111911 
    19121912struct SINGLE_LIST_ENTRY { 
    19131913    SINGLE_LIST_ENTRY *Next; 
    19141914} 
    1915 alias SINGLE_LIST_ENTRY * PSINGLE_LIST_ENTRY; 
     1915alias SINGLE_LIST_ENTRY* PSINGLE_LIST_ENTRY; 
    19161916 
    19171917 
     
    19281928    } 
    19291929} 
    1930 alias SLIST_HEADER * PSLIST_HEADER; 
     1930alias SLIST_HEADER* PSLIST_HEADER; 
    19311931// #endif /* !_SLIST_HEADER_ */ 
    19321932 
     
    19401940    DWORD Spare[2]; 
    19411941} 
    1942 alias RTL_CRITICAL_SECTION_DEBUG * PRTL_CRITICAL_SECTION_DEBUG; 
     1942alias RTL_CRITICAL_SECTION_DEBUG* PRTL_CRITICAL_SECTION_DEBUG; 
    19431943 
    19441944struct RTL_CRITICAL_SECTION { 
     
    19501950    DWORD Reserved; 
    19511951} 
    1952 alias RTL_CRITICAL_SECTION * PRTL_CRITICAL_SECTION; 
     1952alias RTL_CRITICAL_SECTION* PRTL_CRITICAL_SECTION; 
    19531953 
    19541954struct EVENTLOGRECORD { 
     
    19701970    DWORD DataOffset; 
    19711971} 
    1972 alias EVENTLOGRECORD * PEVENTLOGRECORD; 
     1972alias EVENTLOGRECORD* PEVENTLOGRECORD; 
    19731973 
    19741974struct OSVERSIONINFOA { 
     
    19801980    CHAR szCSDVersion[128]; 
    19811981} 
    1982 alias OSVERSIONINFOA * POSVERSIONINFOA, LPOSVERSIONINFOA; 
     1982alias OSVERSIONINFOA* POSVERSIONINFOA, LPOSVERSIONINFOA; 
    19831983 
    19841984struct OSVERSIONINFOW { 
     
    19901990    WCHAR szCSDVersion[128]; 
    19911991} 
    1992 alias OSVERSIONINFOW * POSVERSIONINFOW, LPOSVERSIONINFOW; 
     1992alias OSVERSIONINFOW* POSVERSIONINFOW, LPOSVERSIONINFOW; 
    19931993 
    19941994struct OSVERSIONINFOEXA { 
     
    20052005    BYTE wReserved; 
    20062006} 
    2007 alias OSVERSIONINFOEXA * POSVERSIONINFOEXA, LPOSVERSIONINFOEXA; 
     2007alias OSVERSIONINFOEXA* POSVERSIONINFOEXA, LPOSVERSIONINFOEXA; 
    20082008 
    20092009struct OSVERSIONINFOEXW { 
     
    20202020    BYTE wReserved; 
    20212021} 
    2022 alias OSVERSIONINFOEXW * POSVERSIONINFOEXW, LPOSVERSIONINFOEXW; 
     2022alias OSVERSIONINFOEXW* POSVERSIONINFOEXW, LPOSVERSIONINFOEXW; 
    20232023 
    20242024align(2): 
     
    20762076    WORD e32_ddkver; 
    20772077} 
    2078 alias IMAGE_VXD_HEADER * PIMAGE_VXD_HEADER; 
     2078alias IMAGE_VXD_HEADER* PIMAGE_VXD_HEADER; 
    20792079 
    20802080align(4): 
     
    20882088    WORD Characteristics; 
    20892089} 
    2090 alias IMAGE_FILE_HEADER * PIMAGE_FILE_HEADER; 
     2090alias IMAGE_FILE_HEADER* PIMAGE_FILE_HEADER; 
    20912091 
    20922092struct IMAGE_DATA_DIRECTORY { 
     
    20942094    DWORD Size; 
    20952095} 
    2096 alias IMAGE_DATA_DIRECTORY * PIMAGE_DATA_DIRECTORY; 
     2096alias IMAGE_DATA_DIRECTORY* PIMAGE_DATA_DIRECTORY; 
    20972097 
    20982098struct IMAGE_OPTIONAL_HEADER { 
     
    21292129    IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]; 
    21302130} 
    2131 alias IMAGE_OPTIONAL_HEADER * PIMAGE_OPTIONAL_HEADER; 
     2131alias IMAGE_OPTIONAL_HEADER* PIMAGE_OPTIONAL_HEADER; 
    21322132 
    21332133struct IMAGE_ROM_OPTIONAL_HEADER { 
     
    21462146    DWORD GpValue; 
    21472147} 
    2148 alias IMAGE_ROM_OPTIONAL_HEADER * PIMAGE_ROM_OPTIONAL_HEADER; 
     2148alias IMAGE_ROM_OPTIONAL_HEADER* PIMAGE_ROM_OPTIONAL_HEADER; 
    21492149 
    21502150align(2): 
     
    21702170    LONG e_lfanew; 
    21712171} 
    2172 alias IMAGE_DOS_HEADER * PIMAGE_DOS_HEADER; 
     2172alias IMAGE_DOS_HEADER* PIMAGE_DOS_HEADER; 
    21732173 
    21742174struct IMAGE_OS2_HEADER { 
     
    22042204    WORD ne_expver; 
    22052205} 
    2206 alias IMAGE_OS2_HEADER * PIMAGE_OS2_HEADER; 
     2206alias IMAGE_OS2_HEADER* PIMAGE_OS2_HEADER; 
    22072207 
    22082208align(4): 
     
    22122212    IMAGE_OPTIONAL_HEADER OptionalHeader; 
    22132213} 
    2214 alias IMAGE_NT_HEADERS * PIMAGE_NT_HEADERS; 
     2214alias IMAGE_NT_HEADERS* PIMAGE_NT_HEADERS; 
    22152215 
    22162216struct IMAGE_ROM_HEADERS { 
     
    22182218    IMAGE_ROM_OPTIONAL_HEADER OptionalHeader; 
    22192219} 
    2220 alias IMAGE_ROM_HEADERS * PIMAGE_ROM_HEADERS; 
     2220alias IMAGE_ROM_HEADERS* PIMAGE_ROM_HEADERS; 
    22212221 
    22222222struct IMAGE_SECTION_HEADER { 
     
    22532253    BYTE NumberOfAuxSymbols; 
    22542254} 
    2255 alias IMAGE_SYMBOL * PIMAGE_SYMBOL; 
     2255alias IMAGE_SYMBOL* PIMAGE_SYMBOL; 
    22562256 
    22572257union IMAGE_AUX_SYMBOL { 
     
    22882288    } 
    22892289} 
    2290 alias IMAGE_AUX_SYMBOL * PIMAGE_AUX_SYMBOL; 
     2290alias IMAGE_AUX_SYMBOL* PIMAGE_AUX_SYMBOL; 
    22912291 
    22922292struct IMAGE_COFF_SYMBOLS_HEADER { 
     
    23002300    DWORD RvaToLastByteOfData; 
    23012301} 
    2302 alias IMAGE_COFF_SYMBOLS_HEADER * PIMAGE_COFF_SYMBOLS_HEADER; 
     2302alias IMAGE_COFF_SYMBOLS_HEADER* PIMAGE_COFF_SYMBOLS_HEADER; 
    23032303 
    23042304struct IMAGE_RELOCATION { 
     
    23102310    WORD Type; 
    23112311} 
    2312 alias IMAGE_RELOCATION * PIMAGE_RELOCATION; 
     2312alias IMAGE_RELOCATION* PIMAGE_RELOCATION; 
    23132313 
    23142314align(4): 
     
    23172317    DWORD SizeOfBlock; 
    23182318} 
    2319 alias IMAGE_BASE_RELOCATION * PIMAGE_BASE_RELOCATION; 
     2319alias IMAGE_BASE_RELOCATION* PIMAGE_BASE_RELOCATION; 
    23202320 
    23212321align(2): 
     
    23272327    WORD Linenumber; 
    23282328} 
    2329 alias IMAGE_LINENUMBER * PIMAGE_LINENUMBER; 
     2329alias IMAGE_LINENUMBER* PIMAGE_LINENUMBER; 
    23302330 
    23312331align(4): 
     
    23392339    BYTE EndHeader[2]; 
    23402340} 
    2341 alias IMAGE_ARCHIVE_MEMBER_HEADER * PIMAGE_ARCHIVE_MEMBER_HEADER; 
     2341alias IMAGE_ARCHIVE_MEMBER_HEADER* PIMAGE_ARCHIVE_MEMBER_HEADER; 
    23422342 
    23432343struct IMAGE_EXPORT_DIRECTORY { 
     
    23542354    DWORD AddressOfNameOrdinals; 
    23552355} 
    2356 alias IMAGE_EXPORT_DIRECTORY * PIMAGE_EXPORT_DIRECTORY; 
     2356alias IMAGE_EXPORT_DIRECTORY* PIMAGE_EXPORT_DIRECTORY; 
    23572357 
    23582358struct IMAGE_IMPORT_BY_NAME { 
     
    23602360    BYTE Name[1]; 
    23612361} 
    2362 alias IMAGE_IMPORT_BY_NAME * PIMAGE_IMPORT_BY_NAME; 
     2362alias IMAGE_IMPORT_BY_NAME* PIMAGE_IMPORT_BY_NAME; 
    23632363 
    23642364struct IMAGE_THUNK_DATA32 { 
     
    23702370    } 
    23712371} 
    2372 alias IMAGE_THUNK_DATA32 * PIMAGE_THUNK_DATA32; 
     2372alias IMAGE_THUNK_DATA32* PIMAGE_THUNK_DATA32; 
    23732373 
    23742374struct IMAGE_THUNK_DATA64 { 
    2375 union u1 { 
    2376     ULONGLONG ForwarderString; 
    2377     ULONGLONG Function; 
    2378     ULONGLONG Ordinal; 
    2379     ULONGLONG AddressOfData; 
    2380 
    2381 } 
    2382 alias IMAGE_THUNK_DATA64 * PIMAGE_THUNK_DATA64; 
     2375   union u1 { 
     2376       ULONGLONG ForwarderString; 
     2377       ULONGLONG Function; 
     2378       ULONGLONG Ordinal; 
     2379       ULONGLONG AddressOfData; 
     2380   
     2381} 
     2382alias IMAGE_THUNK_DATA64* PIMAGE_THUNK_DATA64; 
    23832383 
    23842384version(Win64) { 
    2385  
    2386 alias IMAGE_THUNK_DATA64    IMAGE_THUNK_DATA; 
    2387 alias PIMAGE_THUNK_DATA64   PIMAGE_THUNK_DATA; 
    2388  
     2385    alias IMAGE_THUNK_DATA64  IMAGE_THUNK_DATA; 
     2386    alias PIMAGE_THUNK_DATA64 PIMAGE_THUNK_DATA; 
    23892387} else { 
    2390  
    2391 alias IMAGE_THUNK_DATA32    IMAGE_THUNK_DATA; 
    2392 alias PIMAGE_THUNK_DATA32   PIMAGE_THUNK_DATA; 
    2393  
     2388    alias IMAGE_THUNK_DATA32  IMAGE_THUNK_DATA; 
     2389    alias PIMAGE_THUNK_DATA32 PIMAGE_THUNK_DATA; 
    23942390} 
    23952391 
     
    24042400    DWORD FirstThunk; 
    24052401} 
    2406 alias IMAGE_IMPORT_DESCRIPTOR * PIMAGE_IMPORT_DESCRIPTOR; 
     2402alias IMAGE_IMPORT_DESCRIPTOR* PIMAGE_IMPORT_DESCRIPTOR; 
    24072403 
    24082404struct IMAGE_BOUND_IMPORT_DESCRIPTOR { 
     
    24112407    WORD NumberOfModuleForwarderRefs; 
    24122408} 
    2413 alias IMAGE_BOUND_IMPORT_DESCRIPTOR * PIMAGE_BOUND_IMPORT_DESCRIPTOR; 
     2409alias IMAGE_BOUND_IMPORT_DESCRIPTOR* PIMAGE_BOUND_IMPORT_DESCRIPTOR; 
    24142410 
    24152411struct IMAGE_BOUND_FORWARDER_REF { 
     
    24182414    WORD Reserved; 
    24192415} 
    2420 alias IMAGE_BOUND_FORWARDER_REF * PIMAGE_BOUND_FORWARDER_REF; 
     2416alias IMAGE_BOUND_FORWARDER_REF* PIMAGE_BOUND_FORWARDER_REF; 
    24212417 
    24222418extern (Windows): 
     
    24312427    DWORD Characteristics; 
    24322428} 
    2433 alias IMAGE_TLS_DIRECTORY32 * PIMAGE_TLS_DIRECTORY32; 
     2429alias IMAGE_TLS_DIRECTORY32* PIMAGE_TLS_DIRECTORY32; 
    24342430 
    24352431struct IMAGE_TLS_DIRECTORY64 { 
     
    24442440 
    24452441version (Win64) { 
    2446  
    2447 alias IMAGE_TLS_DIRECTORY64   IMAGE_TLS_DIRECTORY; 
    2448 alias PIMAGE_TLS_DIRECTORY64  PIMAGE_TLS_DIRECTORY; 
    2449  
     2442    alias IMAGE_TLS_DIRECTORY64  IMAGE_TLS_DIRECTORY; 
     2443    alias PIMAGE_TLS_DIRECTORY64 PIMAGE_TLS_DIRECTORY; 
    24502444} else { 
    2451  
    2452 alias IMAGE_TLS_DIRECTORY32   IMAGE_TLS_DIRECTORY; 
    2453 alias PIMAGE_TLS_DIRECTORY32  PIMAGE_TLS_DIRECTORY; 
    2454  
     2445    alias IMAGE_TLS_DIRECTORY32  IMAGE_TLS_DIRECTORY; 
     2446    alias PIMAGE_TLS_DIRECTORY32 PIMAGE_TLS_DIRECTORY; 
    24552447} 
    24562448 
     
    24622454    WORD NumberOfNamedEntries; 
    24632455    WORD NumberOfIdEntries; 
    2464 } IMAGE_RESOURCE_DIRECTORY * PIMAGE_RESOURCE_DIRECTORY; 
     2456} IMAGE_RESOURCE_DIRECTORY* PIMAGE_RESOURCE_DIRECTORY; 
    24652457 
    24662458struct IMAGE_RESOURCE_DIRECTORY_ENTRY { 
     
    24812473    } 
    24822474} 
    2483 alias IMAGE_RESOURCE_DIRECTORY_ENTRY * PIMAGE_RESOURCE_DIRECTORY_ENTRY; 
     2475alias IMAGE_RESOURCE_DIRECTORY_ENTRY* PIMAGE_RESOURCE_DIRECTORY_ENTRY; 
    24842476 
    24852477struct IMAGE_RESOURCE_DIRECTORY_STRING { 
     
    24872479    CHAR NameString[1]; 
    24882480} 
    2489 alias IMAGE_RESOURCE_DIRECTORY_STRING * PIMAGE_RESOURCE_DIRECTORY_STRING; 
     2481alias IMAGE_RESOURCE_DIRECTORY_STRING* PIMAGE_RESOURCE_DIRECTORY_STRING; 
    24902482 
    24912483struct IMAGE_RESOURCE_DIR_STRING_U { 
     
    24932485    WCHAR NameString[1]; 
    24942486} 
    2495 alias IMAGE_RESOURCE_DIR_STRING_U * PIMAGE_RESOURCE_DIR_STRING_U; 
     2487alias IMAGE_RESOURCE_DIR_STRING_U* PIMAGE_RESOURCE_DIR_STRING_U; 
    24962488 
    24972489struct IMAGE_RESOURCE_DATA_ENTRY { 
     
    25012493    DWORD Reserved; 
    25022494} 
    2503 alias IMAGE_RESOURCE_DATA_ENTRY * PIMAGE_RESOURCE_DATA_ENTRY; 
     2495alias IMAGE_RESOURCE_DATA_ENTRY* PIMAGE_RESOURCE_DATA_ENTRY; 
    25042496 
    25052497struct IMAGE_LOAD_CONFIG_DIRECTORY { 
     
    25192511    DWORD Reserved[4]; 
    25202512} 
    2521 alias IMAGE_LOAD_CONFIG_DIRECTORY * PIMAGE_LOAD_CONFIG_DIRECTORY; 
     2513alias IMAGE_LOAD_CONFIG_DIRECTORY* PIMAGE_LOAD_CONFIG_DIRECTORY; 
    25222514 
    25232515struct IMAGE_RUNTIME_FUNCTION_ENTRY { 
     
    25282520    DWORD PrologEndAddress; 
    25292521} 
    2530 alias IMAGE_RUNTIME_FUNCTION_ENTRY * PIMAGE_RUNTIME_FUNCTION_ENTRY; 
     2522alias IMAGE_RUNTIME_FUNCTION_ENTRY* PIMAGE_RUNTIME_FUNCTION_ENTRY; 
    25312523 
    25322524struct IMAGE_DEBUG_DIRECTORY { 
     
    25402532    DWORD PointerToRawData; 
    25412533} 
    2542 alias IMAGE_DEBUG_DIRECTORY * PIMAGE_DEBUG_DIRECTORY; 
     2534alias IMAGE_DEBUG_DIRECTORY* PIMAGE_DEBUG_DIRECTORY; 
    25432535 
    25442536struct FPO_DATA { 
     
    25572549*/ 
    25582550} 
    2559 alias FPO_DATA * PFPO_DATA; 
     2551alias FPO_DATA* PFPO_DATA; 
    25602552 
    25612553struct IMAGE_DEBUG_MISC { 
     
    25662558    BYTE Data[1]; 
    25672559} 
    2568 alias IMAGE_DEBUG_MISC * PIMAGE_DEBUG_MISC; 
     2560alias IMAGE_DEBUG_MISC* PIMAGE_DEBUG_MISC; 
    25692561 
    25702562struct IMAGE_FUNCTION_ENTRY { 
     
    25732565    DWORD EndOfPrologue; 
    25742566} 
    2575 alias IMAGE_FUNCTION_ENTRY * PIMAGE_FUNCTION_ENTRY; 
     2567alias IMAGE_FUNCTION_ENTRY* PIMAGE_FUNCTION_ENTRY; 
    25762568 
    25772569struct IMAGE_SEPARATE_DEBUG_HEADER { 
     
    25902582    DWORD Reserved[2]; 
    25912583} 
    2592 alias IMAGE_SEPARATE_DEBUG_HEADER * PIMAGE_SEPARATE_DEBUG_HEADER; 
     2584alias IMAGE_SEPARATE_DEBUG_HEADER* PIMAGE_SEPARATE_DEBUG_HEADER; 
    25932585 
    25942586align: 
     
    26352627    NT_TIB *Self; 
    26362628} 
    2637 alias NT_TIB * PNT_TIB; 
     2629alias NT_TIB* PNT_TIB; 
    26382630 
    26392631struct REPARSE_DATA_BUFFER { 
     
    26722664    } 
    26732665} 
    2674 alias REPARSE_GUID_DATA_BUFFER * PREPARSE_GUID_DATA_BUFFER; 
     2666alias REPARSE_GUID_DATA_BUFFER* PREPARSE_GUID_DATA_BUFFER; 
    26752667 
    26762668const REPARSE_DATA_BUFFER_HEADER_SIZE = REPARSE_DATA_BUFFER.u.GenericReparseBuffer.DataBuffer.offsetof; 
     
    26832675    WORD   UnparsedNameLength; 
    26842676} 
    2685 alias REPARSE_POINT_INFORMATION * PREPARSE_POINT_INFORMATION; 
     2677alias REPARSE_POINT_INFORMATION* PREPARSE_POINT_INFORMATION; 
    26862678 
    26872679union FILE_SEGMENT_ELEMENT { 
     
    26892681    ULONGLONG Alignment; 
    26902682} 
    2691 alias FILE_SEGMENT_ELEMENT * PFILE_SEGMENT_ELEMENT; 
     2683alias FILE_SEGMENT_ELEMENT* PFILE_SEGMENT_ELEMENT; 
    26922684 
    26932685// JOBOBJECT_BASIC_LIMIT_INFORMATION.LimitFlags constants 
     
    27602752    DWORD TotalTerminatedProcesses; 
    27612753} 
    2762 alias JOBOBJECT_BASIC_ACCOUNTING_INFORMATION * PJOBOBJECT_BASIC_ACCOUNTING_INFORMATION; 
     2754alias JOBOBJECT_BASIC_ACCOUNTING_INFORMATION* PJOBOBJECT_BASIC_ACCOUNTING_INFORMATION; 
    27632755struct JOBOBJECT_BASIC_LIMIT_INFORMATION { 
    27642756    LARGE_INTEGER PerProcessUserTimeLimit; 
     
    27722764    DWORD SchedulingClass; 
    27732765} 
    2774 alias JOBOBJECT_BASIC_LIMIT_INFORMATION * PJOBOBJECT_BASIC_LIMIT_INFORMATION; 
     2766alias JOBOBJECT_BASIC_LIMIT_INFORMATION* PJOBOBJECT_BASIC_LIMIT_INFORMATION; 
    27752767 
    27762768struct JOBOBJECT_BASIC_PROCESS_ID_LIST { 
     
    27932785    PTOKEN_GROUPS RestrictedSids; 
    27942786} 
    2795 alias JOBOBJECT_SECURITY_LIMIT_INFORMATION * PJOBOBJECT_SECURITY_LIMIT_INFORMATION; 
     2787alias JOBOBJECT_SECURITY_LIMIT_INFORMATION* PJOBOBJECT_SECURITY_LIMIT_INFORMATION; 
    27962788 
    27972789struct JOBOBJECT_END_OF_JOB_TIME_INFORMATION { 
    27982790    DWORD EndOfJobTimeAction; 
    27992791} 
    2800 alias JOBOBJECT_END_OF_JOB_TIME_INFORMATION * PJOBOBJECT_END_OF_JOB_TIME_INFORMATION; 
     2792alias JOBOBJECT_END_OF_JOB_TIME_INFORMATION* PJOBOBJECT_END_OF_JOB_TIME_INFORMATION; 
    28012793 
    28022794struct JOBOBJECT_ASSOCIATE_COMPLETION_PORT { 
     
    28042796    HANDLE CompletionPort; 
    28052797} 
    2806 alias JOBOBJECT_ASSOCIATE_COMPLETION_PORT * PJOBOBJECT_ASSOCIATE_COMPLETION_PORT; 
     2798alias JOBOBJECT_ASSOCIATE_COMPLETION_PORT* PJOBOBJECT_ASSOCIATE_COMPLETION_PORT; 
    28072799 
    28082800struct JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION { 
     
    28202812    SIZE_T PeakJobMemoryUsed; 
    28212813} 
    2822 alias JOBOBJECT_EXTENDED_LIMIT_INFORMATION * PJOBOBJECT_EXTENDED_LIMIT_INFORMATION; 
     2814alias JOBOBJECT_EXTENDED_LIMIT_INFORMATION* PJOBOBJECT_EXTENDED_LIMIT_INFORMATION; 
    28232815 
    28242816struct JOBOBJECT_JOBSET_INFORMATION { 
    28252817    DWORD MemberLevel; 
    28262818} 
    2827 alias JOBOBJECT_JOBSET_INFORMATION * PJOBOBJECT_JOBSET_INFORMATION; 
     2819alias JOBOBJECT_JOBSET_INFORMATION* PJOBOBJECT_JOBSET_INFORMATION; 
    28282820 
    28292821/* MinGW: Making these defines conditional on WINVER will break ddk includes */ 
     
    28412833    LT_LOWEST_LATENCY 
    28422834} 
    2843 alias LATENCY_TIME * PLATENCY_TIME; 
     2835alias LATENCY_TIME* PLATENCY_TIME; 
    28442836 
    28452837enum SYSTEM_POWER_STATE { 
     
    28532845    PowerSystemMaximum 
    28542846} 
    2855 alias SYSTEM_POWER_STATE * PSYSTEM_POWER_STATE; 
     2847alias SYSTEM_POWER_STATE* PSYSTEM_POWER_STATE; 
    28562848 
    28572849const POWER_SYSTEM_MAXIMUM = SYSTEM_POWER_STATE.PowerSystemMaximum; 
     
    28672859PowerActionWarmEject 
    28682860} 
    2869 alias POWER_ACTION * PPOWER_ACTION; 
     2861alias POWER_ACTION* PPOWER_ACTION; 
    28702862 
    28712863enum DEVICE_POWER_STATE { 
     
    28772869    PowerDeviceMaximum 
    28782870} 
    2879 alias DEVICE_POWER_STATE * PDEVICE_POWER_STATE; 
     2871alias DEVICE_POWER_STATE* PDEVICE_POWER_STATE; 
    28802872 
    28812873struct BATTERY_REPORTING_SCALE { 
     
    28832875    DWORD  Capacity; 
    28842876} 
    2885 alias BATTERY_REPORTING_SCALE * PBATTERY_REPORTING_SCALE; 
     2877alias BATTERY_REPORTING_SCALE* PBATTERY_REPORTING_SCALE; 
    28862878 
    28872879struct POWER_ACTION_POLICY { 
     
    29262918    SYSTEM_POWER_STATE  MinSystemState; 
    29272919} 
    2928 alias SYSTEM_POWER_LEVEL * PSYSTEM_POWER_LEVEL; 
     2920alias SYSTEM_POWER_LEVEL* PSYSTEM_POWER_LEVEL; 
    29292921 
    29302922struct SYSTEM_POWER_POLICY { 
     
    29582950    POWER_ACTION_POLICY  OverThrottled; 
    29592951} 
    2960 alias SYSTEM_POWER_POLICY * PSYSTEM_POWER_POLICY; 
     2952alias SYSTEM_POWER_POLICY* PSYSTEM_POWER_POLICY; 
    29612953 
    29622954struct SYSTEM_POWER_CAPABILITIES { 
     
    29902982    SYSTEM_POWER_STATE  DefaultLowLatencyWake; 
    29912983} 
    2992 alias SYSTEM_POWER_CAPABILITIES * PSYSTEM_POWER_CAPABILITIES; 
     2984alias SYSTEM_POWER_CAPABILITIES* PSYSTEM_POWER_CAPABILITIES; 
    29932985 
    29942986struct SYSTEM_BATTERY_STATE { 
     
    30052997    ULONG  DefaultAlert2; 
    30062998} 
    3007 alias SYSTEM_BATTERY_STATE * PSYSTEM_BATTERY_STATE; 
     2999alias SYSTEM_BATTERY_STATE* PSYSTEM_BATTERY_STATE; 
    30083000 
    30093001enum POWER_INFORMATION_LEVEL { 
     
    30433035    UCHAR  CoolingMode; 
    30443036} 
    3045 alias SYSTEM_POWER_INFORMATION * PSYSTEM_POWER_INFORMATION; 
     3037alias SYSTEM_POWER_INFORMATION* PSYSTEM_POWER_INFORMATION; 
    30463038//#endif 
    30473039 
     
    31483140    PROCESSOR_POWER_POLICY_INFO  Policy[3]; 
    31493141} 
    3150 alias PROCESSOR_POWER_POLICY * PPROCESSOR_POWER_POLICY; 
     3142alias PROCESSOR_POWER_POLICY* PPROCESSOR_POWER_POLICY; 
    31513143 
    31523144struct ADMINISTRATOR_POWER_POLICY { 
     
    31583150    ULONG  MaxSpindownTimeout; 
    31593151} 
    3160 alias ADMINISTRATOR_POWER_POLICY * PADMINISTRATOR_POWER_POLICY; 
     3152alias ADMINISTRATOR_POWER_POLICY* PADMINISTRATOR_POWER_POLICY; 
    31613153 
    31623154align: 
  • trunk/win32/winperf.d

    r85 r135  
    8282const PERF_ELAPSED_TIME=(PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_ELAPSED|PERF_OBJECT_TIMER|PERF_DISPLAY_SECONDS); 
    8383 
    84 struct PERF_DATA_BLOCK
     84struct PERF_DATA_BLOCK
    8585    WCHAR Signature[4]; 
    8686    DWORD LittleEndian; 
     
    100100alias PERF_DATA_BLOCK * PPERF_DATA_BLOCK; 
    101101 
    102 struct PERF_OBJECT_TYPE
     102struct PERF_OBJECT_TYPE
    103103    DWORD TotalByteLength; 
    104104    DWORD DefinitionLength; 
     
    118118alias PERF_OBJECT_TYPE * PPERF_OBJECT_TYPE; 
    119119 
    120 struct PERF_COUNTER_DEFINITION
     120struct PERF_COUNTER_DEFINITION
    121121    DWORD ByteLength; 
    122122    DWORD CounterNameTitleIndex; 
     
    132132alias PERF_COUNTER_DEFINITION * PPERF_COUNTER_DEFINITION; 
    133133 
    134 struct PERF_INSTANCE_DEFINITION
     134struct PERF_INSTANCE_DEFINITION
    135135    DWORD ByteLength; 
    136136    DWORD ParentObjectTitleIndex; 
     
    142142alias PERF_INSTANCE_DEFINITION * PPERF_INSTANCE_DEFINITION; 
    143143 
    144 struct PERF_COUNTER_BLOCK
     144struct PERF_COUNTER_BLOCK
    145145    DWORD ByteLength; 
    146146} 
  • trunk/win32/winreg.d

    r127 r135  
    2929 
    3030enum : DWORD { 
    31     REG_CREATED_NEW_KEY        = 1, 
     31    REG_CREATED_NEW_KEY = 1, 
    3232    REG_OPENED_EXISTING_KEY 
    3333} 
  • trunk/win32/winsock2.d

    r129 r135  
    610610    int shutdown(SOCKET, int); 
    611611    SOCKET socket(int, int, int); 
    612      
     612 
    613613    alias typeof(&accept) LPFN_ACCEPT; 
    614614    alias typeof(&bind) LPFN_BIND; 
     
    687687    int WSACancelAsyncRequest(HANDLE); 
    688688    int WSAAsyncSelect(SOCKET, HWND, u_int, long); 
    689      
     689 
    690690    alias typeof(&WSAAsyncGetServByName) LPFN_WSAAsyncGetServByName; 
    691691    alias typeof(&WSAAsyncGetServByPort) LPFN_WSAASYNCGETSERVBYPORT; 
     
    819819    uint        Latency; 
    820820    uint        DelayVariation; 
    821     SERVICETYPE    ServiceType; 
     821    SERVICETYPE ServiceType; 
    822822    uint        MaxSduSize; 
    823823    uint        MinimumPolicedSize; 
     
    857857struct WSANETWORKEVENTS { 
    858858    int lNetworkEvents; 
    859     int    iErrorCode[FD_MAX_EVENTS]
     859    int[FD_MAX_EVENTS] iErrorCode
    860860} 
    861861 
     
    12961296const int SIO_NSP_NOTIFY_CHANGE              = _WSAIOW!(IOC_WS2,25); 
    12971297 
    1298 const int TH_NETDEV    = 0x00000001; 
    1299 const int TH_TAPI   = 0x00000002; 
     1298const int TH_NETDEV = 1; 
     1299const int TH_TAPI   = 2; 
    13001300 
    13011301// TODO: The below was declared with "WINAPI" linkage; is this correct? 
     
    13511351    INT WSAStringToAddressW(LPWSTR, INT, LPWSAPROTOCOL_INFOW, LPSOCKADDR, LPINT); 
    13521352    DWORD WSAWaitForMultipleEvents(DWORD, WSAEVENT*, BOOL, DWORD, BOOL); 
    1353      
     1353 
    13541354    alias typeof(&WSAAccept) LPFN_WSAACCEPT; 
    13551355    alias typeof(&WSAAddressToStringA) LPFN_WSAADDRESSTOSTRINGA; 
     
    14551455    alias WSASetServiceA WSASetService; 
    14561456} 
    1457  
  • trunk/win32/winspool.d

    r127 r135  
    99\***********************************************************************/ 
    1010module win32.winspool; 
     11pragma(lib, "winspool.lib"); 
     12 
    1113private import win32.w32api; 
    1214private import win32.windef; 
    1315private import win32.wingdi; 
    1416private import win32.winbase; // for SYSTEMTIME 
    15  
    16 pragma(lib, "winspool.lib"); 
    1717 
    1818// FIXME: clean up Windows version support 
     
    7070const JOB_NOTIFY_FIELD_BYTES_PRINTED=23; 
    7171 
    72 const JOB_ACCESS_ADMINISTER=16; 
    73 const JOB_ALL_ACCESS=(STANDARD_RIGHTS_REQUIRED|JOB_ACCESS_ADMINISTER)
    74 const JOB_READ=(STANDARD_RIGHTS_READ|  JOB_ACCESS_ADMINISTER)
    75 const JOB_WRITE=(STANDARD_RIGHTS_WRITE|JOB_ACCESS_ADMINISTER)
    76 const JOB_EXECUTE=(STANDARD_RIGHTS_EXECUTE|JOB_ACCESS_ADMINISTER)
     72const JOB_ACCESS_ADMINISTER = 16; 
     73const JOB_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | JOB_ACCESS_ADMINISTER
     74const JOB_READ       = STANDARD_RIGHTS_READ     | JOB_ACCESS_ADMINISTER
     75const JOB_WRITE      = STANDARD_RIGHTS_WRITE    | JOB_ACCESS_ADMINISTER
     76const JOB_EXECUTE    = STANDARD_RIGHTS_EXECUTE  | JOB_ACCESS_ADMINISTER
    7777 
    7878const PRINTER_NOTIFY_OPTIONS_REFRESH=1; 
     
    248248const PORT_STATUS_POWER_SAVE=12; 
    249249 
    250 struct ADDJOB_INFO_1A
     250struct ADDJOB_INFO_1A
    251251    LPSTR Path; 
    252252    DWORD JobId; 
    253253} 
    254 alias ADDJOB_INFO_1A * PADDJOB_INFO_1A, LPADDJOB_INFO_1A; 
    255  
    256 struct ADDJOB_INFO_1W
     254alias ADDJOB_INFO_1A* PADDJOB_INFO_1A, LPADDJOB_INFO_1A; 
     255 
     256struct ADDJOB_INFO_1W
    257257    LPWSTR Path; 
    258258    DWORD JobId; 
    259259} 
    260 alias ADDJOB_INFO_1W * PADDJOB_INFO_1W, LPADDJOB_INFO_1W; 
    261  
    262 struct DATATYPES_INFO_1A
     260alias ADDJOB_INFO_1W* PADDJOB_INFO_1W, LPADDJOB_INFO_1W; 
     261 
     262struct DATATYPES_INFO_1A
    263263    LPSTR pName; 
    264264} 
    265 alias DATATYPES_INFO_1A * PDATATYPES_INFO_1A, LPDATATYPES_INFO_1A; 
    266  
    267 struct DATATYPES_INFO_1W
     265alias DATATYPES_INFO_1A* PDATATYPES_INFO_1A, LPDATATYPES_INFO_1A; 
     266 
     267struct DATATYPES_INFO_1W
    268268    LPWSTR pName; 
    269269} 
    270 alias DATATYPES_INFO_1W * PDATATYPES_INFO_1W, LPDATATYPES_INFO_1W; 
    271  
    272 struct JOB_INFO_1A
     270alias DATATYPES_INFO_1W* PDATATYPES_INFO_1W, LPDATATYPES_INFO_1W; 
     271 
     272struct JOB_INFO_1A
    273273    DWORD JobId; 
    274274    LPSTR pPrinterName; 
     
    285285    SYSTEMTIME Submitted; 
    286286} 
    287 alias JOB_INFO_1A * PJOB_INFO_1A, LPJOB_INFO_1A; 
    288  
    289 struct JOB_INFO_1W
     287alias JOB_INFO_1A* PJOB_INFO_1A, LPJOB_INFO_1A; 
     288 
     289struct JOB_INFO_1W
    290290    DWORD JobId; 
    291291    LPWSTR pPrinterName; 
     
    302302    SYSTEMTIME Submitted; 
    303303} 
    304 alias JOB_INFO_1W * PJOB_INFO_1W, LPJOB_INFO_1W; 
    305  
    306 struct JOB_INFO_2A
     304alias JOB_INFO_1W* PJOB_INFO_1W, LPJOB_INFO_1W; 
     305 
     306struct JOB_INFO_2A
    307307    DWORD JobId; 
    308308    LPSTR pPrinterName; 
     
    329329    DWORD PagesPrinted; 
    330330} 
    331 alias JOB_INFO_2A * PJOB_INFO_2A, LPJOB_INFO_2A; 
    332  
    333 struct JOB_INFO_2W
     331alias JOB_INFO_2A* PJOB_INFO_2A, LPJOB_INFO_2A; 
     332 
     333struct JOB_INFO_2W
    334334    DWORD JobId; 
    335335    LPWSTR pPrinterName; 
     
    356356    DWORD PagesPrinted; 
    357357} 
    358 alias JOB_INFO_2W * PJOB_INFO_2W, LPJOB_INFO_2W; 
    359  
    360 struct DOC_INFO_1A
     358alias JOB_INFO_2W* PJOB_INFO_2W, LPJOB_INFO_2W; 
     359 
     360struct DOC_INFO_1A
    361361    LPSTR pDocName; 
    362362    LPSTR pOutputFile; 
    363363    LPSTR pDatatype; 
    364364} 
    365 alias DOC_INFO_1A * PDOC_INFO_1A, LPDOC_INFO_1A; 
    366  
    367 struct DOC_INFO_1W
     365alias DOC_INFO_1A* PDOC_INFO_1A, LPDOC_INFO_1A; 
     366 
     367struct DOC_INFO_1W
    368368    LPWSTR pDocName; 
    369369    LPWSTR pOutputFile; 
    370370    LPWSTR pDatatype; 
    371371} 
    372 alias DOC_INFO_1W * PDOC_INFO_1W, LPDOC_INFO_1W; 
    373  
    374 struct DOC_INFO_2A
     372alias DOC_INFO_1W* PDOC_INFO_1W, LPDOC_INFO_1W; 
     373 
     374struct DOC_INFO_2A
    375375    LPSTR pDocName; 
    376376    LPSTR pOutputFile; 
     
    379379    DWORD JobId; 
    380380} 
    381 alias DOC_INFO_2A * PDOC_INFO_2A, LPDOC_INFO_2A; 
    382  
    383 struct DOC_INFO_2W
     381alias DOC_INFO_2A* PDOC_INFO_2A, LPDOC_INFO_2A; 
     382 
     383struct DOC_INFO_2W
    384384    LPWSTR pDocName; 
    385385    LPWSTR pOutputFile; 
    386386    LPWSTR pDatatype; 
    387     DWORD dwMode; 
    388     DWORD JobId; 
    389 } 
    390 alias DOC_INFO_2W * PDOC_INFO_2W, LPDOC_INFO_2W; 
    391  
    392 struct DRIVER_INFO_1A 
    393     LPSTR  pName; 
    394 } 
    395 alias DRIVER_INFO_1A * PDRIVER_INFO_1A, LPDRIVER_INFO_1A; 
    396  
    397 struct DRIVER_INFO_1W 
    398     LPWSTR pName; 
    399 } 
    400 alias DRIVER_INFO_1W * PDRIVER_INFO_1W, LPDRIVER_INFO_1W; 
    401  
    402 struct DRIVER_INFO_2A 
     387    DWORD dwMode; 
     388    DWORD JobId; 
     389} 
     390alias DOC_INFO_2W* PDOC_INFO_2W, LPDOC_INFO_2W; 
     391 
     392struct DRIVER_INFO_1A
     393    LPSTR pName; 
     394} 
     395alias DRIVER_INFO_1A* PDRIVER_INFO_1A, LPDRIVER_INFO_1A; 
     396 
     397struct DRIVER_INFO_1W
     398    LPWSTR pName; 
     399} 
     400alias DRIVER_INFO_1W* PDRIVER_INFO_1W, LPDRIVER_INFO_1W; 
     401 
     402struct DRIVER_INFO_2A
    403403    DWORD cVersion; 
    404404    LPSTR pName; 
     
    408408    LPSTR pConfigFile; 
    409409} 
    410 alias DRIVER_INFO_2A * PDRIVER_INFO_2A, LPDRIVER_INFO_2A; 
    411  
    412 struct DRIVER_INFO_2W 
    413     DWORD cVersion; 
     410alias DRIVER_INFO_2A* PDRIVER_INFO_2A, LPDRIVER_INFO_2A; 
     411 
     412struct DRIVER_INFO_2W
     413    DWORD cVersion; 
    414414    LPWSTR pName; 
    415415    LPWSTR pEnvironment; 
     
    418418    LPWSTR pConfigFile; 
    419419} 
    420 alias DRIVER_INFO_2W * PDRIVER_INFO_2W, LPDRIVER_INFO_2W; 
    421  
    422 struct DRIVER_INFO_3A 
     420alias DRIVER_INFO_2W* PDRIVER_INFO_2W, LPDRIVER_INFO_2W; 
     421 
     422struct DRIVER_INFO_3A
    423423    DWORD cVersion; 
    424424    LPSTR pName; 
     
    432432    LPSTR pDefaultDataType; 
    433433} 
    434 alias DRIVER_INFO_3A * PDRIVER_INFO_3A, LPDRIVER_INFO_3A; 
    435  
    436 struct DRIVER_INFO_3W 
    437     DWORD cVersion; 
     434alias DRIVER_INFO_3A* PDRIVER_INFO_3A, LPDRIVER_INFO_3A; 
     435 
     436struct DRIVER_INFO_3W
     437    DWORD cVersion; 
    438438    LPWSTR pName; 
    439439    LPWSTR pEnvironment; 
     
    446446    LPWSTR pDefaultDataType; 
    447447} 
    448 alias DRIVER_INFO_3W * PDRIVER_INFO_3W, LPDRIVER_INFO_3W; 
    449  
    450 struct MONITOR_INFO_1A
     448alias DRIVER_INFO_3W* PDRIVER_INFO_3W, LPDRIVER_INFO_3W; 
     449 
     450struct MONITOR_INFO_1A
    451451    LPSTR pName; 
    452452} 
    453 alias MONITOR_INFO_1A * PMONITOR_INFO_1A, LPMONITOR_INFO_1A; 
    454  
    455 struct MONITOR_INFO_1W
     453alias MONITOR_INFO_1A* PMONITOR_INFO_1A, LPMONITOR_INFO_1A; 
     454 
     455struct MONITOR_INFO_1W
    456456    LPWSTR pName; 
    457457} 
    458 alias MONITOR_INFO_1W * PMONITOR_INFO_1W, LPMONITOR_INFO_1W; 
     458alias MONITOR_INFO_1W* PMONITOR_INFO_1W, LPMONITOR_INFO_1W; 
    459459 
    460460struct PORT_INFO_1A { 
    461461    LPSTR pName; 
    462462} 
    463 alias PORT_INFO_1A * PPORT_INFO_1A, LPPORT_INFO_1A; 
     463alias PORT_INFO_1A* PPORT_INFO_1A, LPPORT_INFO_1A; 
    464464 
    465465struct PORT_INFO_1W { 
    466466    LPWSTR pName; 
    467467} 
    468 alias PORT_INFO_1W * PPORT_INFO_1W, LPPORT_INFO_1W; 
    469  
    470 struct MONITOR_INFO_2A
     468alias PORT_INFO_1W* PPORT_INFO_1W, LPPORT_INFO_1W; 
     469 
     470struct MONITOR_INFO_2A
    471471    LPSTR pName; 
    472472    LPSTR pEnvironment; 
    473473    LPSTR pDLLName; 
    474474} 
    475 alias MONITOR_INFO_2A * PMONITOR_INFO_2A, LPMONITOR_INFO_2A; 
    476  
    477 struct MONITOR_INFO_2W
     475alias MONITOR_INFO_2A* PMONITOR_INFO_2A, LPMONITOR_INFO_2A; 
     476 
     477struct MONITOR_INFO_2W
    478478    LPWSTR pName; 
    479479    LPWSTR pEnvironment; 
    480480    LPWSTR pDLLName; 
    481481} 
    482 alias MONITOR_INFO_2W * PMONITOR_INFO_2W, LPMONITOR_INFO_2W; 
    483  
    484 struct PORT_INFO_2A
     482alias MONITOR_INFO_2W* PMONITOR_INFO_2W, LPMONITOR_INFO_2W; 
     483 
     484struct PORT_INFO_2A
    485485    LPSTR pPortName; 
    486486    LPSTR pMonitorName; 
     
    489489    DWORD Reserved; 
    490490} 
    491 alias PORT_INFO_2A * PPORT_INFO_2A, LPPORT_INFO_2A; 
    492  
    493 struct PORT_INFO_2W
     491alias PORT_INFO_2A* PPORT_INFO_2A, LPPORT_INFO_2A; 
     492 
     493struct PORT_INFO_2W
    494494    LPWSTR pPortName; 
    495495    LPWSTR pMonitorName; 
     
    498498    DWORD Reserved; 
    499499} 
    500 alias PORT_INFO_2W * PPORT_INFO_2W, LPPORT_INFO_2W; 
    501  
    502 struct PORT_INFO_3A
     500alias PORT_INFO_2W* PPORT_INFO_2W, LPPORT_INFO_2W; 
     501 
     502struct PORT_INFO_3A
    503503    DWORD dwStatus; 
    504504    LPSTR pszStatus; 
    505505    DWORD dwSeverity; 
    506506} 
    507 alias PORT_INFO_3A * PPORT_INFO_3A, LPPORT_INFO_3A; 
    508  
    509 struct PORT_INFO_3W
     507alias PORT_INFO_3A* PPORT_INFO_3A, LPPORT_INFO_3A; 
     508 
     509struct PORT_INFO_3W
    510510    DWORD dwStatus; 
    511511    LPWSTR pszStatus; 
    512512    DWORD dwSeverity; 
    513513} 
    514 alias PORT_INFO_3W * PPORT_INFO_3W, LPPORT_INFO_3W; 
     514alias PORT_INFO_3W* PPORT_INFO_3W, LPPORT_INFO_3W; 
    515515 
    516516struct PRINTER_INFO_1A { 
     
    520520    LPSTR pComment; 
    521521} 
    522 alias PRINTER_INFO_1A * PPRINTER_INFO_1A, LPPRINTER_INFO_1A; 
    523  
    524 struct PRINTER_INFO_1W
    525     DWORD Flags; 
     522alias PRINTER_INFO_1A* PPRINTER_INFO_1A, LPPRINTER_INFO_1A; 
     523 
     524struct PRINTER_INFO_1W
     525    DWORD Flags; 
    526526    LPWSTR pDescription; 
    527527    LPWSTR pName; 
    528528    LPWSTR pComment; 
    529529} 
    530 alias PRINTER_INFO_1W * PPRINTER_INFO_1W, LPPRINTER_INFO_1W; 
     530alias PRINTER_INFO_1W* PPRINTER_INFO_1W, LPPRINTER_INFO_1W; 
    531531 
    532532struct PRINTER_INFO_2A { 
     
    553553    DWORD AveragePPM; 
    554554} 
    555 alias PRINTER_INFO_2A * PPRINTER_INFO_2A, LPPRINTER_INFO_2A; 
     555alias PRINTER_INFO_2A* PPRINTER_INFO_2A, LPPRINTER_INFO_2A; 
    556556 
    557557struct PRINTER_INFO_2W { 
     
    578578    DWORD AveragePPM; 
    579579} 
    580 alias PRINTER_INFO_2W * PPRINTER_INFO_2W, LPPRINTER_INFO_2W; 
    581  
    582 struct PRINTER_INFO_3 
     580alias PRINTER_INFO_2W* PPRINTER_INFO_2W, LPPRINTER_INFO_2W; 
     581 
     582struct PRINTER_INFO_3
    583583    PSECURITY_DESCRIPTOR pSecurityDescriptor; 
    584584} 
    585 alias PRINTER_INFO_3 * PPRINTER_INFO_3, LPPRINTER_INFO_3; 
     585alias PRINTER_INFO_3* PPRINTER_INFO_3, LPPRINTER_INFO_3; 
    586586 
    587587struct PRINTER_INFO_4A { 
     
    590590    DWORD Attributes; 
    591591} 
    592 alias PRINTER_INFO_4A * PPRINTER_INFO_4A, LPPRINTER_INFO_4A; 
    593  
    594 struct PRINTER_INFO_4W
     592alias PRINTER_INFO_4A* PPRINTER_INFO_4A, LPPRINTER_INFO_4A; 
     593 
     594struct PRINTER_INFO_4W
    595595    LPWSTR pPrinterName; 
    596596    LPWSTR pServerName; 
    597597    DWORD Attributes; 
    598598} 
    599 alias PRINTER_INFO_4W * PPRINTER_INFO_4W, LPPRINTER_INFO_4W; 
    600  
    601 struct PRINTER_INFO_5A
     599alias PRINTER_INFO_4W* PPRINTER_INFO_4W, LPPRINTER_INFO_4W; 
     600 
     601struct PRINTER_INFO_5A
    602602    LPSTR pPrinterName; 
    603603    LPSTR pPortName; 
     
    606606    DWORD TransmissionRetryTimeout; 
    607607} 
    608 alias PRINTER_INFO_5A * PPRINTER_INFO_5A, LPPRINTER_INFO_5A; 
    609  
    610 struct PRINTER_INFO_5W
     608alias PRINTER_INFO_5A* PPRINTER_INFO_5A, LPPRINTER_INFO_5A; 
     609 
     610struct PRINTER_INFO_5W
    611611    LPWSTR pPrinterName; 
    612612    LPWSTR pPortName; 
     
    615615    DWORD TransmissionRetryTimeout; 
    616616} 
    617 alias PRINTER_INFO_5W * PPRINTER_INFO_5W, LPPRINTER_INFO_5W; 
    618  
    619 struct PRINTER_INFO_6
    620     DWORD  dwStatus; 
    621 } 
    622 alias PRINTER_INFO_6 * PPRINTER_INFO_6, LPPRINTER_INFO_6; 
     617alias PRINTER_INFO_5W* PPRINTER_INFO_5W, LPPRINTER_INFO_5W; 
     618 
     619struct PRINTER_INFO_6
     620    DWORD dwStatus; 
     621} 
     622alias PRINTER_INFO_6* PPRINTER_INFO_6, LPPRINTER_INFO_6; 
    623623 
    624624struct PRINTPROCESSOR_INFO_1A { 
    625625    LPSTR pName; 
    626626} 
    627 alias PRINTPROCESSOR_INFO_1A * PPRINTPROCESSOR_INFO_1A, LPPRINTPROCESSOR_INFO_1A; 
     627alias PRINTPROCESSOR_INFO_1A* PPRINTPROCESSOR_INFO_1A, LPPRINTPROCESSOR_INFO_1A; 
    628628 
    629629struct PRINTPROCESSOR_INFO_1W { 
    630630    LPWSTR pName; 
    631631} 
    632 alias PRINTPROCESSOR_INFO_1W * PPRINTPROCESSOR_INFO_1W, LPPRINTPROCESSOR_INFO_1W; 
    633  
    634 struct PRINTER_NOTIFY_INFO_DATA { 
    635     WORD Type; 
    636     WORD Field; 
     632alias PRINTPROCESSOR_INFO_1W* PPRINTPROCESSOR_INFO_1W, LPPRINTPROCESSOR_INFO_1W; 
     633 
     634struct PRINTER_NOTIFY_INFO_DATA { 
     635    WORD Type; 
     636    WORD Field; 
    637637    DWORD Reserved; 
    638638    DWORD Id; 
     
    645645    } 
    646646} 
    647 alias PRINTER_NOTIFY_INFO_DATA * PPRINTER_NOTIFY_INFO_DATA, LPPRINTER_NOTIFY_INFO_DATA; 
    648  
    649 struct PRINTER_NOTIFY_INFO { 
     647alias PRINTER_NOTIFY_INFO_DATA* PPRINTER_NOTIFY_INFO_DATA, LPPRINTER_NOTIFY_INFO_DATA; 
     648 
     649struct PRINTER_NOTIFY_INFO { 
    650650    DWORD Version; 
    651651    DWORD Flags; 
     
    653653    PRINTER_NOTIFY_INFO_DATA aData[1]; 
    654654} 
    655 alias PRINTER_NOTIFY_INFO * PPRINTER_NOTIFY_INFO, LPPRINTER_NOTIFY_INFO; 
     655alias PRINTER_NOTIFY_INFO* PPRINTER_NOTIFY_INFO, LPPRINTER_NOTIFY_INFO; 
    656656 
    657657struct FORM_INFO_1A { 
    658     DWORD  Flags; 
    659     LPSTR  pName; 
    660     SIZEL  Size; 
    661     RECTL  ImageableArea; 
    662 } 
    663 alias FORM_INFO_1A * PFORM_INFO_1A, LPFORM_INFO_1A; 
     658    DWORD Flags; 
     659    LPSTR pName; 
     660    SIZEL Size; 
     661    RECTL ImageableArea; 
     662} 
     663alias FORM_INFO_1A* PFORM_INFO_1A, LPFORM_INFO_1A; 
    664664 
    665665struct FORM_INFO_1W { 
    666     DWORD  Flags; 
    667     LPWSTR pName; 
    668     SIZEL  Size; 
    669     RECTL  ImageableArea; 
    670 } 
    671 alias FORM_INFO_1W *PFORM_INFO_1W, LPFORM_INFO_1W; 
     666    DWORD  Flags; 
     667    LPWSTR pName; 
     668    SIZEL  Size; 
     669    RECTL  ImageableArea; 
     670} 
     671alias FORM_INFO_1W* PFORM_INFO_1W, LPFORM_INFO_1W; 
    672672 
    673673struct PRINTER_DEFAULTSA { 
    674     LPSTR pDatatype; 
    675     LPDEVMODE pDevMode; 
    676     ACCESS_MASK    DesiredAccess; 
    677 } 
    678 alias PRINTER_DEFAULTSA * PPRINTER_DEFAULTSA, LPPRINTER_DEFAULTSA; 
     674    LPSTR       pDatatype; 
     675    LPDEVMODE   pDevMode; 
     676    ACCESS_MASK DesiredAccess; 
     677} 
     678alias PRINTER_DEFAULTSA* PPRINTER_DEFAULTSA, LPPRINTER_DEFAULTSA; 
    679679 
    680680struct PRINTER_DEFAULTSW { 
     
    683683    ACCESS_MASK DesiredAccess; 
    684684} 
    685 alias PRINTER_DEFAULTSW * PPRINTER_DEFAULTSW, LPPRINTER_DEFAULTSW; 
     685alias PRINTER_DEFAULTSW* PPRINTER_DEFAULTSW, LPPRINTER_DEFAULTSW; 
    686686 
    687687extern (Windows): 
    688688BOOL AbortPrinter(HANDLE); 
    689 BOOL AddFormA(HANDLE,DWORD,PBYTE); 
    690 BOOL AddFormW(HANDLE,DWORD,PBYTE); 
    691 BOOL AddJobA(HANDLE,DWORD,PBYTE,DWORD,PDWORD); 
    692 BOOL AddJobW(HANDLE,DWORD,PBYTE,DWORD,PDWORD); 
    693 BOOL AddMonitorA(LPSTR,DWORD,PBYTE); 
    694 BOOL AddMonitorW(LPWSTR,DWORD,PBYTE); 
    695 BOOL AddPortA(LPSTR,HWND,LPSTR); 
    696 BOOL AddPortW(LPWSTR,HWND,LPWSTR); 
    697 HANDLE AddPrinterA(LPSTR,DWORD,PBYTE); 
    698 HANDLE AddPrinterW(LPWSTR,DWORD,PBYTE); 
     689BOOL AddFormA(HANDLE, DWORD, PBYTE); 
     690BOOL AddFormW(HANDLE, DWORD, PBYTE); 
     691BOOL AddJobA(HANDLE, DWORD, PBYTE, DWORD, PDWORD); 
     692BOOL AddJobW(HANDLE, DWORD, PBYTE, DWORD, PDWORD); 
     693BOOL AddMonitorA(LPSTR, DWORD, PBYTE); 
     694BOOL AddMonitorW(LPWSTR, DWORD, PBYTE); 
     695BOOL AddPortA(LPSTR, HWND, LPSTR); 
     696BOOL AddPortW(LPWSTR, HWND, LPWSTR); 
     697HANDLE AddPrinterA(LPSTR, DWORD, PBYTE); 
     698HANDLE AddPrinterW(LPWSTR, DWORD, PBYTE); 
    699699BOOL AddPrinterConnectionA(LPSTR); 
    700700BOOL AddPrinterConnectionW(LPWSTR); 
    701 BOOL AddPrinterDriverA(LPSTR,DWORD,PBYTE); 
    702 BOOL AddPrinterDriverW(LPWSTR,DWORD,PBYTE); 
    703 BOOL AddPrintProcessorA(LPSTR,LPSTR,LPSTR,LPSTR); 
    704 BOOL AddPrintProcessorW(LPWSTR,LPWSTR,LPWSTR,LPWSTR); 
    705 BOOL AddPrintProvidorA(LPSTR,DWORD,PBYTE); 
    706 BOOL AddPrintProvidorW(LPWSTR,DWORD,PBYTE); 
    707 LONG AdvancedDocumentPropertiesA(HWND,HANDLE,LPSTR,PDEVMODE,PDEVMODEA); 
    708 LONG AdvancedDocumentPropertiesW(HWND,HANDLE,LPWSTR,PDEVMODE,PDEVMODEW); 
     701BOOL AddPrinterDriverA(LPSTR, DWORD, PBYTE); 
     702BOOL AddPrinterDriverW(LPWSTR, DWORD, PBYTE); 
     703BOOL AddPrintProcessorA(LPSTR, LPSTR, LPSTR, LPSTR); 
     704BOOL AddPrintProcessorW(LPWSTR, LPWSTR, LPWSTR, LPWSTR); 
     705BOOL AddPrintProvidorA(LPSTR, DWORD, PBYTE); 
     706BOOL AddPrintProvidorW(LPWSTR, DWORD, PBYTE); 
     707LONG AdvancedDocumentPropertiesA(HWND, HANDLE, LPSTR, PDEVMODE, PDEVMODEA); 
     708LONG AdvancedDocumentPropertiesW(HWND, HANDLE, LPWSTR, PDEVMODE, PDEVMODEW); 
    709709BOOL ClosePrinter(HANDLE); 
    710 BOOL ConfigurePortA(LPSTR,HWND,LPSTR); 
    711 BOOL ConfigurePortW(LPWSTR,HWND,LPWSTR); 
    712 HANDLE ConnectToPrinterDlg(HWND,DWORD); 
    713 BOOL DeleteFormA(HANDLE,LPSTR); 
    714 BOOL DeleteFormW(HANDLE,LPWSTR); 
    715 BOOL DeleteMonitorA(LPSTR,LPSTR,LPSTR); 
    716 BOOL DeleteMonitorW(LPWSTR,LPWSTR,LPWSTR); 
    717 BOOL DeletePortA(LPSTR,HWND,LPSTR); 
    718 BOOL DeletePortW(LPWSTR,HWND,LPWSTR); 
     710BOOL ConfigurePortA(LPSTR, HWND, LPSTR); 
     711BOOL ConfigurePortW(LPWSTR, HWND, LPWSTR); 
     712HANDLE ConnectToPrinterDlg(HWND, DWORD); 
     713BOOL DeleteFormA(HANDLE, LPSTR); 
     714BOOL DeleteFormW(HANDLE, LPWSTR); 
     715BOOL DeleteMonitorA(LPSTR, LPSTR, LPSTR); 
     716BOOL DeleteMonitorW(LPWSTR, LPWSTR, LPWSTR); 
     717BOOL DeletePortA(LPSTR, HWND, LPSTR); 
     718BOOL DeletePortW(LPWSTR, HWND, LPWSTR); 
    719719BOOL DeletePrinter(HANDLE); 
    720720BOOL DeletePrinterConnectionA(LPSTR); 
    721721BOOL DeletePrinterConnectionW(LPWSTR); 
    722 DWORD DeletePrinterDataA(HANDLE,LPSTR); 
    723 DWORD DeletePrinterDataW(HANDLE,LPWSTR); 
    724 BOOL DeletePrinterDriverA(LPSTR,LPSTR,LPSTR); 
    725 BOOL DeletePrinterDriverW(LPWSTR,LPWSTR,LPWSTR); 
    726 BOOL DeletePrintProcessorA(LPSTR,LPSTR,LPSTR); 
    727 BOOL DeletePrintProcessorW(LPWSTR,LPWSTR,LPWSTR); 
    728 BOOL DeletePrintProvidorA(LPSTR,LPSTR,LPSTR); 
    729 BOOL DeletePrintProvidorW(LPWSTR,LPWSTR,LPWSTR); 
    730 LONG DocumentPropertiesA(HWND,HANDLE,LPSTR,PDEVMODEA,PDEVMODEA,DWORD); 
    731 LONG DocumentPropertiesW(HWND,HANDLE,LPWSTR,PDEVMODEW,PDEVMODEW,DWORD); 
     722DWORD DeletePrinterDataA(HANDLE, LPSTR); 
     723DWORD DeletePrinterDataW(HANDLE, LPWSTR); 
     724BOOL DeletePrinterDriverA(LPSTR, LPSTR, LPSTR); 
     725BOOL DeletePrinterDriverW(LPWSTR, LPWSTR, LPWSTR); 
     726BOOL DeletePrintProcessorA(LPSTR, LPSTR, LPSTR); 
     727BOOL DeletePrintProcessorW(LPWSTR, LPWSTR, LPWSTR); 
     728BOOL DeletePrintProvidorA(LPSTR, LPSTR, LPSTR); 
     729BOOL DeletePrintProvidorW(LPWSTR, LPWSTR, LPWSTR); 
     730LONG DocumentPropertiesA(HWND, HANDLE, LPSTR, PDEVMODEA, PDEVMODEA, DWORD); 
     731LONG DocumentPropertiesW(HWND, HANDLE, LPWSTR, PDEVMODEW, PDEVMODEW, DWORD); 
    732732BOOL EndDocPrinter(HANDLE); 
    733733BOOL EndPagePrinter(HANDLE); 
    734 BOOL EnumFormsA(HANDLE,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    735 BOOL EnumFormsW(HANDLE,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    736 BOOL EnumJobsA(HANDLE,DWORD,DWORD,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    737 BOOL EnumJobsW(HANDLE,DWORD,DWORD,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    738 BOOL EnumMonitorsA(LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    739 BOOL EnumMonitorsW(LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    740 BOOL EnumPortsA(LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    741 BOOL EnumPortsW(LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    742 DWORD EnumPrinterDataA(HANDLE,DWORD,LPSTR,DWORD,PDWORD,PDWORD,PBYTE,DWORD,PDWORD); 
    743 DWORD EnumPrinterDataW(HANDLE,DWORD,LPWSTR,DWORD,PDWORD,PDWORD,PBYTE,DWORD,PDWORD); 
    744 BOOL EnumPrinterDriversA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    745 BOOL EnumPrinterDriversW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    746 BOOL EnumPrintersA(DWORD,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    747 BOOL EnumPrintersW(DWORD,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    748 BOOL EnumPrintProcessorDatatypesA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    749 BOOL EnumPrintProcessorDatatypesW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    750 BOOL EnumPrintProcessorsA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
    751 BOOL EnumPrintProcessorsW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); 
     734BOOL EnumFormsA(HANDLE, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     735BOOL EnumFormsW(HANDLE, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     736BOOL EnumJobsA(HANDLE, DWORD, DWORD, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     737BOOL EnumJobsW(HANDLE, DWORD, DWORD, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     738BOOL EnumMonitorsA(LPSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     739BOOL EnumMonitorsW(LPWSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     740BOOL EnumPortsA(LPSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     741BOOL EnumPortsW(LPWSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     742DWORD EnumPrinterDataA(HANDLE, DWORD, LPSTR, DWORD, PDWORD, PDWORD, PBYTE, DWORD, PDWORD); 
     743DWORD EnumPrinterDataW(HANDLE, DWORD, LPWSTR, DWORD, PDWORD, PDWORD, PBYTE, DWORD, PDWORD); 
     744BOOL EnumPrinterDriversA(LPSTR, LPSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     745BOOL EnumPrinterDriversW(LPWSTR, LPWSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     746BOOL EnumPrintersA(DWORD, LPSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     747BOOL EnumPrintersW(DWORD, LPWSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     748BOOL EnumPrintProcessorDatatypesA(LPSTR, LPSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     749BOOL EnumPrintProcessorDatatypesW(LPWSTR, LPWSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     750BOOL EnumPrintProcessorsA(LPSTR, LPSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
     751BOOL EnumPrintProcessorsW(LPWSTR, LPWSTR, DWORD, PBYTE, DWORD, PDWORD, PDWORD); 
    752752BOOL FindClosePrinterChangeNotification(HANDLE); 
    753 HANDLE FindFirstPrinterChangeNotification(HANDLE,DWORD,DWORD,PVOID); 
    754 HANDLE FindNextPrinterChangeNotification(HANDLE,PDWORD,PVOID,PVOID*); 
     753HANDLE FindFirstPrinterChangeNotification(HANDLE, DWORD, DWORD, PVOID); 
     754HANDLE FindNextPrinterChangeNotification(HANDLE, PDWORD, PVOID, PVOID*); 
    755755BOOL FreePrinterNotifyInfo(PPRINTER_NOTIFY_INFO); 
    756756 
    757757static if (_WIN32_WINNT >= 0x0500) { 
    758 BOOL GetDefaultPrinterA(LPSTR,LPDWORD); 
    759 BOOL GetDefaultPrinterW(LPWSTR,LPDWORD); 
    760 } 
    761  
    762 BOOL GetFormA(HANDLE,LPSTR,DWORD,PBYTE,DWORD,PDWORD); 
    763 BOOL GetFormW(HANDLE,LPWSTR,DWORD,PBYTE,DWORD,PDWORD); 
    764 BOOL GetJobA(HANDLE,DWORD,DWORD,PBYTE,DWORD,PDWORD); 
    765 BOOL GetJobW(HANDLE,DWORD,DWORD,PBYTE,DWORD,PDWORD); 
    766 BOOL GetPrinterA(HANDLE,DWORD,PBYTE,DWORD,PDWORD); 
    767 BOOL GetPrinterW(HANDLE,DWORD,PBYTE,DWORD,PDWORD); 
    768 DWORD GetPrinterDataA(HANDLE,LPSTR,PDWORD,PBYTE,DWORD,PDWORD); 
    769 DWORD GetPrinterDataW(HANDLE,LPWSTR,PDWORD,PBYTE,DWORD,PDWORD); 
    770 DWORD GetPrinterDriverA(HANDLE,LPSTR,DWORD,PBYTE,DWORD,PDWORD); 
    771 DWORD GetPrinterDriverW(HANDLE,LPWSTR,DWORD,PBYTE,DWORD,PDWORD); 
    772 DWORD GetPrinterDriverDirectoryA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD); 
    773 DWORD GetPrinterDriverDirectoryW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD); 
    774 DWORD GetPrintProcessorDirectoryA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD); 
    775 DWORD GetPrintProcessorDirectoryW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD); 
    776 BOOL OpenPrinterA(LPSTR,PHANDLE,LPPRINTER_DEFAULTSA); 
    777 BOOL OpenPrinterW(LPWSTR,PHANDLE,LPPRINTER_DEFAULTSW); 
    778 DWORD PrinterMessageBoxA(HANDLE,DWORD,HWND,LPSTR,LPSTR,DWORD); 
    779 DWORD PrinterMessageBoxW(HANDLE,DWORD,HWND,LPWSTR,LPWSTR,DWORD); 
    780 BOOL PrinterProperties(HWND,HANDLE); 
    781 BOOL ReadPrinter(HANDLE,PVOID,DWORD,PDWORD); 
    782 BOOL ResetPrinterA(HANDLE,LPPRINTER_DEFAULTSA); 
    783 BOOL ResetPrinterW(HANDLE,LPPRINTER_DEFAULTSW); 
    784 BOOL ScheduleJob(HANDLE,DWORD); 
    785 BOOL SetFormA(HANDLE,LPSTR,DWORD,PBYTE); 
    786 BOOL SetFormW(HANDLE,LPWSTR,DWORD,PBYTE); 
    787 BOOL SetJobA(HANDLE,DWORD,DWORD,PBYTE,DWORD); 
    788 BOOL SetJobW(HANDLE,DWORD,DWORD,PBYTE,DWORD); 
    789 BOOL SetPrinterA(HANDLE,DWORD,PBYTE,DWORD); 
    790 BOOL SetPrinterW(HANDLE,DWORD,PBYTE,DWORD); 
    791 BOOL SetPrinterDataA(HANDLE,LPSTR,DWORD,PBYTE,DWORD); 
    792 BOOL SetPrinterDataW(HANDLE,LPWSTR,DWORD,PBYTE,DWORD); 
    793 DWORD StartDocPrinterA(HANDLE,DWORD,PBYTE); 
    794 DWORD StartDocPrinterW(HANDLE,DWORD,PBYTE); 
     758BOOL GetDefaultPrinterA(LPSTR, LPDWORD); 
     759BOOL GetDefaultPrinterW(LPWSTR, LPDWORD); 
     760} 
     761 
     762BOOL GetFormA(HANDLE, LPSTR, DWORD, PBYTE, DWORD, PDWORD); 
     763BOOL GetFormW(HANDLE, LPWSTR, DWORD, PBYTE, DWORD, PDWORD); 
     764BOOL GetJobA(HANDLE, DWORD, DWORD, PBYTE, DWORD, PDWORD); 
     765BOOL GetJobW(HANDLE, DWORD, DWORD, PBYTE, DWORD, PDWORD); 
     766BOOL GetPrinterA(HANDLE, DWORD, PBYTE, DWORD, PDWORD); 
     767BOOL GetPrinterW(HANDLE, DWORD, PBYTE, DWORD, PDWORD); 
     768DWORD GetPrinterDataA(HANDLE, LPSTR, PDWORD, PBYTE, DWORD, PDWORD); 
     769DWORD GetPrinterDataW(HANDLE, LPWSTR, PDWORD, PBYTE, DWORD, PDWORD); 
     770DWORD GetPrinterDriverA(HANDLE, LPSTR, DWORD, PBYTE, DWORD, PDWORD); 
     771DWORD GetPrinterDriverW(HANDLE, LPWSTR, DWORD, PBYTE, DWORD, PDWORD); 
     772DWORD GetPrinterDriverDirectoryA(LPSTR, LPSTR, DWORD, PBYTE, DWORD, PDWORD); 
     773DWORD GetPrinterDriverDirectoryW(LPWSTR, LPWSTR, DWORD, PBYTE, DWORD, PDWORD); 
     774DWORD GetPrintProcessorDirectoryA(LPSTR, LPSTR, DWORD, PBYTE, DWORD, PDWORD); 
     775DWORD GetPrintProcessorDirectoryW(LPWSTR, LPWSTR, DWORD, PBYTE, DWORD, PDWORD); 
     776BOOL OpenPrinterA(LPSTR, PHANDLE, LPPRINTER_DEFAULTSA); 
     777BOOL OpenPrinterW(LPWSTR, PHANDLE, LPPRINTER_DEFAULTSW); 
     778DWORD PrinterMessageBoxA(HANDLE, DWORD, HWND, LPSTR, LPSTR, DWORD); 
     779DWORD PrinterMessageBoxW(HANDLE, DWORD, HWND, LPWSTR, LPWSTR, DWORD); 
     780BOOL PrinterProperties(HWND, HANDLE); 
     781BOOL ReadPrinter(HANDLE, PVOID, DWORD, PDWORD); 
     782BOOL ResetPrinterA(HANDLE, LPPRINTER_DEFAULTSA); 
     783BOOL ResetPrinterW(HANDLE, LPPRINTER_DEFAULTSW); 
     784BOOL ScheduleJob(HANDLE, DWORD); 
     785BOOL SetFormA(HANDLE, LPSTR, DWORD, PBYTE); 
     786BOOL SetFormW(HANDLE, LPWSTR, DWORD, PBYTE); 
     787BOOL SetJobA(HANDLE, DWORD, DWORD, PBYTE, DWORD); 
     788BOOL SetJobW(HANDLE, DWORD, DWORD, PBYTE, DWORD); 
     789BOOL SetPrinterA(HANDLE, DWORD, PBYTE, DWORD); 
     790BOOL SetPrinterW(HANDLE, DWORD, PBYTE, DWORD); 
     791BOOL SetPrinterDataA(HANDLE, LPSTR, DWORD, PBYTE, DWORD); 
     792BOOL SetPrinterDataW(HANDLE, LPWSTR, DWORD, PBYTE, DWORD); 
     793DWORD StartDocPrinterA(HANDLE, DWORD, PBYTE); 
     794DWORD StartDocPrinterW(HANDLE, DWORD, PBYTE); 
    795795BOOL StartPagePrinter(HANDLE); 
    796 DWORD WaitForPrinterChange(HANDLE,DWORD); 
    797 BOOL WritePrinter(HANDLE,PVOID,DWORD,PDWORD); 
     796DWORD WaitForPrinterChange(HANDLE, DWORD); 
     797BOOL WritePrinter(HANDLE, PVOID, DWORD, PDWORD); 
    798798 
    799799version(Unicode) { 
     
    942942} 
    943943 
    944 alias JOB_INFO_1 * PJOB_INFO_1, LPJOB_INFO_1; 
    945 alias JOB_INFO_2 * PJOB_INFO_2, LPJOB_INFO_2; 
    946 alias ADDJOB_INFO_1 * PADDJOB_INFO_1, LPADDJOB_INFO_1; 
    947 alias DATATYPES_INFO_1 * PDATATYPES_INFO_1, LPDATATYPES_INFO_1; 
    948 alias MONITOR_INFO_1 * PMONITOR_INFO_1, LPMONITOR_INFO_1; 
    949 alias MONITOR_INFO_2 * PMONITOR_INFO_2, LPMONITOR_INFO_2; 
    950 alias DOC_INFO_1 * PDOC_INFO_1, LPDOC_INFO_1; 
    951 alias DOC_INFO_2 * PDOC_INFO_2, LPDOC_INFO_2; 
    952 alias PORT_INFO_1 * PPORT_INFO_1, LPPORT_INFO_1; 
    953 alias PORT_INFO_2 * PPORT_INFO_2, LPPORT_INFO_2; 
    954 alias PORT_INFO_3 * PPORT_INFO_3, LPPORT_INFO_3; 
    955 alias DRIVER_INFO_2 * PDRIVER_INFO_2, LPDRIVER_INFO_2; 
    956 alias PRINTER_INFO_1 * PPRINTER_INFO_1, LPPRINTER_INFO_1; 
    957 alias PRINTER_INFO_2 * PPRINTER_INFO_2, LPPRINTER_INFO_2; 
    958 alias PRINTER_INFO_4 * PPRINTER_INFO_4, LPPRINTER_INFO_4; 
    959 alias PRINTER_INFO_5 * PPRINTER_INFO_5, LPPRINTER_INFO_5; 
    960 alias PRINTPROCESSOR_INFO_1 * PPRINTPROCESSOR_INFO_1, LPPRINTPROCESSOR_INFO_1; 
    961 alias FORM_INFO_1 * PFORM_INFO_1, LPFORM_INFO_1; 
    962 alias PRINTER_DEFAULTS * PPRINTER_DEFAULTS, LPPRINTER_DEFAULTS; 
     944alias JOB_INFO_1* PJOB_INFO_1, LPJOB_INFO_1; 
     945alias JOB_INFO_2* PJOB_INFO_2, LPJOB_INFO_2; 
     946alias ADDJOB_INFO_1* PADDJOB_INFO_1, LPADDJOB_INFO_1; 
     947alias DATATYPES_INFO_1* PDATATYPES_INFO_1, LPDATATYPES_INFO_1; 
     948alias MONITOR_INFO_1* PMONITOR_INFO_1, LPMONITOR_INFO_1; 
     949alias MONITOR_INFO_2* PMONITOR_INFO_2, LPMONITOR_INFO_2; 
     950alias DOC_INFO_1* PDOC_INFO_1, LPDOC_INFO_1; 
     951alias DOC_INFO_2* PDOC_INFO_2, LPDOC_INFO_2; 
     952alias PORT_INFO_1* PPORT_INFO_1, LPPORT_INFO_1; 
     953alias PORT_INFO_2* PPORT_INFO_2, LPPORT_INFO_2; 
     954alias PORT_INFO_3* PPORT_INFO_3, LPPORT_INFO_3; 
     955alias DRIVER_INFO_2* PDRIVER_INFO_2, LPDRIVER_INFO_2; 
     956alias PRINTER_INFO_1* PPRINTER_INFO_1, LPPRINTER_INFO_1; 
     957alias PRINTER_INFO_2* PPRINTER_INFO_2, LPPRINTER_INFO_2; 
     958alias PRINTER_INFO_4* PPRINTER_INFO_4, LPPRINTER_INFO_4; 
     959alias PRINTER_INFO_5* PPRINTER_INFO_5, LPPRINTER_INFO_5; 
     960alias PRINTPROCESSOR_INFO_1* PPRINTPROCESSOR_INFO_1, LPPRINTPROCESSOR_INFO_1; 
     961alias FORM_INFO_1* PFORM_INFO_1, LPFORM_INFO_1; 
     962alias PRINTER_DEFAULTS* PPRINTER_DEFAULTS, LPPRINTER_DEFAULTS; 
  • trunk/win32/winsvc.d

    r127 r135  
    241241    } 
    242242    alias SERVICE_DESCRIPTIONA* LPSERVICE_DESCRIPTIONA; 
    243      
     243 
    244244    struct SERVICE_DESCRIPTIONW { 
    245245        LPWSTR lpDescription; 
     
    268268    } 
    269269    alias SERVICE_FAILURE_ACTIONSA* LPSERVICE_FAILURE_ACTIONSA; 
    270      
     270 
    271271    struct SERVICE_FAILURE_ACTIONSW { 
    272272        DWORD      dwResetPeriod; 
     
    347347          LPHANDLER_FUNCTION_EX, LPVOID); 
    348348    } 
    349      
     349 
    350350    static if (_WIN32_WINNT >= 0x501) { 
    351351        BOOL ChangeServiceConfig2A(SC_HANDLE, DWORD, LPVOID); 
     
    380380        alias EnumServicesStatusExW EnumServicesStatusEx; 
    381381        alias QueryServiceConfig2W QueryServiceConfig2; 
    382         alias RegisterServiceCtrlHandlerExW RegisterServiceCtrlHandlerEx;   
     382        alias RegisterServiceCtrlHandlerExW RegisterServiceCtrlHandlerEx; 
    383383    } 
    384384 
     
    386386        alias ChangeServiceConfig2W ChangeServiceConfig2; 
    387387    } 
    388      
     388 
    389389} else { 
    390390    alias ENUM_SERVICE_STATUSA ENUM_SERVICE_STATUS; 
     
    413413        alias EnumServicesStatusExA EnumServicesStatusEx; 
    414414        alias QueryServiceConfig2A QueryServiceConfig2; 
    415         alias RegisterServiceCtrlHandlerExA RegisterServiceCtrlHandlerEx;   
     415        alias RegisterServiceCtrlHandlerExA RegisterServiceCtrlHandlerEx; 
    416416    } 
    417417 
     
    419419        alias ChangeServiceConfig2A ChangeServiceConfig2; 
    420420    } 
    421      
     421 
    422422} 
    423423 
  • trunk/win32/winuser.d

    r127 r135  
    88*                       Placed into public domain                       * 
    99\***********************************************************************/ 
    10  
    1110// Conversion Notes: 
    1211// The following macros were for win16 only, and are not included in this file: 
    13 //#define EnumTaskWindows(h,f,p) EnumThreadWindows((DWORD)h,f,p) 
    14 //#define PostAppMessageA(t,m,w,l) PostThreadMessageA((DWORD)t,m,w,l) 
    15 //#define PostAppMessageW(t,m,w,l) PostThreadMessageW((DWORD)t,m,w,l) 
     12//#define EnumTaskWindows(h, f, p) EnumThreadWindows((DWORD)h, f, p) 
     13//#define PostAppMessageA(t, m, w, l) PostThreadMessageA((DWORD)t, m, w, l) 
     14//#define PostAppMessageW(t, m, w, l) PostThreadMessageW((DWORD)t, m, w, l) 
    1615//#define GetSysModalWindow() (NULL) 
    1716//#define SetSysModalWindow(h) (NULL) 
    1817//#define GetWindowTask(hWnd) ((HANDLE)GetWindowThreadProcessId(hWnd, NULL)) 
    19 //#define DefHookProc(c,p,lp,h) CallNextHookEx((HHOOK)*h,c,p,lp) 
     18//#define DefHookProc(c, p, lp, h) CallNextHookEx((HHOOK)*h, c, p, lp) 
    2019 
    2120module win32.winuser; 
     21pragma(lib, "user32.lib"); 
     22 
    2223private import win32.w32api; 
    2324private import win32.winbase; 
     
    2526private import win32.windef; // for HMONITOR 
    2627 
    27 pragma(lib, "user32.lib"); 
    28  
    2928// FIXME: clean up Windows version support 
    3029 
    31 template MAKEINTATOM_T (int i) 
    32 
    33     const LPTSTR MAKEINTATOM_T = cast(LPTSTR)(i); 
     30template MAKEINTATOM_T(int i) { 
     31    const LPTSTR MAKEINTATOM_T = cast(LPTSTR) i; 
    3432} 
    3533 
     
    4442const ATF_TIMEOUTON     = 1; 
    4543const ATF_ONOFFFEEDBACK = 2; 
    46 const ATF_AVAILABLE     = 4;/* May be obsolete. Not in recent MS docs. */ 
     44const ATF_AVAILABLE     = 4; // May be obsolete. Not in recent MS docs. 
    4745 
    4846const WH_MIN             = -1; 
     
    158156const MF_HILITE = 128; 
    159157 
    160 /* Also defined in dbt.h */ 
     158// Also defined in dbt.h 
    161159const BSM_ALLCOMPONENTS      = 0; 
    162160const BSM_VXDS               = 1; 
     
    174172const BSF_NOTIMEOUTIFNOTHUNG = 0x00000040; 
    175173 
    176 static if (_WIN32_WINNT >= 0x0500) { 
     174static if (_WIN32_WINNT >= 0x500) { 
    177175    const BSF_ALLOWSFW          = 0x00000080; 
    178176    const BSF_SENDNOTIFYMESSAGE = 0x00000100; 
    179177} 
    180 static if (_WIN32_WINNT >= 0x0501) { 
     178static if (_WIN32_WINNT >= 0x501) { 
    181179    const BSF_RETURNHDESK       = 0x00000200; 
    182180    const BSF_LUID              = 0x00000400; 
     
    410408const WS_EX_APPWINDOW = 0x40000; 
    411409const WS_EX_CLIENTEDGE = 512; 
    412 const WS_EX_COMPOSITED = 0x2000000;/* XP */ 
     410const WS_EX_COMPOSITED = 0x2000000;  // XP 
    413411const WS_EX_CONTEXTHELP = 0x400; 
    414412const WS_EX_CONTROLPARENT = 0x10000; 
    415413const WS_EX_DLGMODALFRAME = 1; 
    416 const WS_EX_LAYERED = 0x80000;/* w2k */ 
    417 const WS_EX_LAYOUTRTL = 0x400000;/* w98, w2k */ 
     414const WS_EX_LAYERED = 0x80000;  // w2k 
     415const WS_EX_LAYOUTRTL = 0x400000;  // w98, w2k 
    418416const WS_EX_LEFT = 0; 
    419417const WS_EX_LEFTSCROLLBAR = 0x4000; 
    420418const WS_EX_LTRREADING = 0; 
    421419const WS_EX_MDICHILD = 64; 
    422 const WS_EX_NOACTIVATE = 0x8000000;/* w2k */ 
    423 const WS_EX_NOINHERITLAYOUT = 0x100000;/* w2k */ 
     420const WS_EX_NOACTIVATE = 0x8000000;  // w2k 
     421const WS_EX_NOINHERITLAYOUT = 0x100000;  // w2k 
    424422const WS_EX_NOPARENTNOTIFY = 4; 
    425423const WS_EX_OVERLAPPEDWINDOW = 0x300; 
     
    460458const DC_INBUTTON = 0x00000010; 
    461459 
    462 static if (WINVER >= 0x0500) { 
     460static if (WINVER >= 0x500) { 
    463461const DC_GRADIENT=0x00000020; 
    464462} 
    465 static if (_WIN32_WINNT >= 0x0501) { 
     463static if (_WIN32_WINNT >= 0x501) { 
    466464const DC_BUTTONS=0x00001000; 
    467465} 
    468466 
    469 /* Where are these documented? */ 
     467// Where are these documented? 
    470468//const DC_CAPTION = DC_ICON|DC_TEXT|DC_BUTTONS; 
    471469//const DC_NC      = DC_CAPTION|DC_FRAME; 
     
    509507const DFC_SCROLL=3; 
    510508const DFC_BUTTON=4; 
    511 static if (WINVER >= 0x0500) { 
     509static if (WINVER >= 0x500) { 
    512510const DFC_POPUPMENU=5; 
    513 }// WINVER >= 0x0500 
     511}// WINVER >= 0x500 
    514512 
    515513const DFCS_CAPTIONCLOSE   = 0; 
     
    541539const DFCS_PUSHED              = 512; 
    542540const DFCS_CHECKED             = 1024; 
    543 static if (WINVER >= 0x0500) { 
     541static if (WINVER >= 0x500) { 
    544542const DFCS_TRANSPARENT         = 0x800; 
    545543const DFCS_HOT                 = 0x1000; 
     
    668666const EWX_FORCE    = 4; 
    669667const EWX_POWEROFF = 8; 
    670 static if (_WIN32_WINNT >= 0x0500) { 
     668static if (_WIN32_WINNT >= 0x500) { 
    671669const EWX_FORCEIFHUNG = 16; 
    672670} 
     
    735733const MIIM_FTYPE = 256; 
    736734 
    737 static if (WINVER >= 0x0500) { 
     735static if (WINVER >= 0x500) { 
    738736 
    739737const MIM_MAXHEIGHT = 1; 
     
    819817const MB_RETRYCANCEL = 5; 
    820818 
    821 static if (is(_WIN32_WINNT)) { 
    822     static if (_WIN32_WINNT >= 0x0400) { 
    823     const MB_SERVICE_NOTIFICATION = 0x00200000; 
     819static if (_WIN32_WINNT_ONLY) { 
     820    static if (_WIN32_WINNT >= 0x400) { 
     821       const MB_SERVICE_NOTIFICATION = 0x00200000; 
    824822    } else { 
    825     const MB_SERVICE_NOTIFICATION = 0x00040000; 
     823       const MB_SERVICE_NOTIFICATION = 0x00040000; 
    826824    } 
    827825    const MB_SERVICE_NOTIFICATION_NT3X = 0x00040000; 
     
    840838const MB_TYPEMASK = 15; 
    841839// [Redefined] MB_TOPMOST=0x40000 
    842 static if (WINVER >= 0x0500) { 
    843 const MB_CANCELTRYCONTINUE=6; 
     840static if (WINVER >= 0x500) { 
     841   const MB_CANCELTRYCONTINUE=6; 
    844842} 
    845843 
     
    851849const IDYES      = 6; 
    852850const IDNO       = 7; 
    853 static if (WINVER >= 0x0400) { 
     851static if (WINVER >= 0x400) { 
    854852const IDCLOSE    = 8; 
    855853const IDHELP     = 9; 
    856854} 
    857 static if (WINVER >= 0x0500) { 
     855static if (WINVER >= 0x500) { 
    858856const IDTRYAGAIN = 10; 
    859857const IDCONTINUE = 11; 
     
    890888const QS_HOTKEY         = 128; 
    891889const QS_ALLPOSTMESSAGE = 256; 
    892 static if (_WIN32_WINNT >= 0x0501) { 
     890static if (_WIN32_WINNT >= 0x501) { 
    893891const QS_RAWINPUT       = 1024; 
    894892const QS_INPUT          = 1031; 
     
    10801078const KEYEVENTF_EXTENDEDKEY = 0x00000001; 
    10811079const KEYEVENTF_KEYUP       = 00000002; 
    1082 static if (_WIN32_WINNT >= 0x0500) { 
     1080static if (_WIN32_WINNT >= 0x500) { 
    10831081const KEYEVENTF_UNICODE     = 0x00000004; 
    10841082const KEYEVENTF_SCANCODE    = 0x00000008; 
     
    11721170const PM_NOYIELD = 2; 
    11731171 
    1174 static if (WINVER >= 0x0500) { 
     1172static if (WINVER >= 0x500) { 
    11751173const PM_QS_INPUT = (QS_INPUT << 16); 
    11761174const PM_QS_POSTMESSAGE = ((QS_POSTMESSAGE|QS_HOTKEY|QS_TIMER) << 16); 
     
    11851183    HWND_TOPMOST   = cast(HWND)(-1), 
    11861184    HWND_DESKTOP   = cast(HWND)0, 
    1187     HWND_MESSAGE   = cast(HWND)(-3);/* w2k */ 
     1185    HWND_MESSAGE   = cast(HWND)(-3);// w2k 
    11881186 
    11891187const RDW_INVALIDATE      = 1; 
     
    12371235const HSHELL_FLASH = 32774; 
    12381236 
    1239 static if (WINVER >= 0x0500) { 
     1237static if (WINVER >= 0x500) { 
    12401238const SPI_SETFOREGROUNDLOCKTIMEOUT=0x2001; 
    12411239const SPI_GETFOREGROUNDLOCKTIMEOUT=0x2000; 
     
    13361334const SPI_SETWORKAREA=47; 
    13371335 
    1338 static if (WINVER >= 0x0500) { 
     1336static if (WINVER >= 0x500) { 
    13391337const SPI_GETDESKWALLPAPER=115; 
    13401338const SPI_GETMOUSESPEED=112; 
     
    13791377const WM_ACTIVATE=6; 
    13801378const WM_ACTIVATEAPP=28; 
    1381 /* FIXME/CHECK: Are WM_AFX{FIRST,LAST} valid for WINVER < 0x400? */ 
     1379// FIXME/CHECK: Are WM_AFX {FIRST, LAST} valid for WINVER < 0x400? 
    13821380const WM_AFXFIRST=864; 
    13831381const WM_AFXLAST=895; 
     
    13931391const WM_CLOSE=16; 
    13941392const WM_COMMAND=273; 
    1395 const WM_COMMNOTIFY=68;/* obsolete */ 
     1393const WM_COMMNOTIFY=68; // obsolete 
    13961394const WM_COMPACTING=65; 
    13971395const WM_COMPAREITEM=57; 
     
    14621460const WM_MDITILE=550; 
    14631461const WM_MEASUREITEM=44; 
    1464 static if (WINVER >= 0x0500) { 
     1462static if (WINVER >= 0x500) { 
    14651463const WM_UNINITMENUPOPUP=0x0125; 
    14661464const WM_MENURBUTTONUP=290; 
     
    14841482const WM_NCMBUTTONDOWN=167; 
    14851483const WM_NCMBUTTONUP=168; 
    1486 static if (_WIN32_WINNT >= 0x0500) { 
     1484static if (_WIN32_WINNT >= 0x500) { 
    14871485const WM_NCXBUTTONDOWN=171; 
    14881486const WM_NCXBUTTONUP=172; 
     
    15721570const WM_MOUSEWHEEL=522; 
    15731571const WM_MOUSEFIRST=512; 
    1574 static if (_WIN32_WINNT >= 0x0500) { 
     1572static if (_WIN32_WINNT >= 0x500) { 
    15751573const WM_XBUTTONDOWN=523; 
    15761574const WM_XBUTTONUP=524; 
     
    15821580const WM_MOUSEHOVER=0x2A1; 
    15831581const WM_MOUSELEAVE=0x2A3; 
    1584 static if (_WIN32_WINNT >= 0x0400) { 
     1582static if (_WIN32_WINNT >= 0x400) { 
    15851583const WHEEL_DELTA=120; 
    15861584 
     
    18241822const MKF_MODIFIERS=64; 
    18251823const MKF_REPLACENUMBERS=128; 
    1826 const SERKF_ACTIVE=8;/* May be obsolete. Not in recent MS docs. */ 
     1824const SERKF_ACTIVE=8;  // May be obsolete. Not in recent MS docs. 
    18271825const SERKF_AVAILABLE=2; 
    18281826const SERKF_INDICATOR=4; 
     
    18631861const VK_CANCEL=3; 
    18641862const VK_MBUTTON=4; 
    1865 static if (_WIN32_WINNT >= 0x0500) { 
     1863static if (_WIN32_WINNT >= 0x500) { 
    18661864const VK_XBUTTON1=5; 
    18671865const VK_XBUTTON2=6; 
     
    19561954const VK_LMENU=0xA4; 
    19571955const VK_RMENU=0xA5; 
    1958 static if (_WIN32_WINNT >= 0x0500) { 
     1956static if (_WIN32_WINNT >= 0x500) { 
    19591957const VK_BROWSER_BACK=0xA6; 
    19601958const VK_BROWSER_FORWARD=0xA7; 
     
    19771975} 
    19781976const VK_OEM_1=0xBA; 
    1979 static if (_WIN32_WINNT >= 0x0500) { 
     1977static if (_WIN32_WINNT >= 0x500) { 
    19801978const VK_OEM_PLUS=0xBB; 
    19811979const VK_OEM_COMMA=0xBC; 
     
    19901988const VK_OEM_7=0xDE; 
    19911989const VK_OEM_8=0xDF; 
    1992 static if (_WIN32_WINNT >= 0x0500) { 
     1990static if (_WIN32_WINNT >= 0x500) { 
    19931991const VK_OEM_102=0xE2; 
    19941992} 
    19951993const VK_PROCESSKEY=0xE5; 
    1996 static if (_WIN32_WINNT >= 0x0500) { 
     1994static if (_WIN32_WINNT >= 0x500) { 
    19971995const VK_PACKET=0xE7; 
    19981996} 
     
    20192017const MK_CONTROL=8; 
    20202018const MK_MBUTTON=16; 
    2021 static if (_WIN32_WINNT >= 0x0500) { 
     2019static if (_WIN32_WINNT >= 0x500) { 
    20222020const MK_XBUTTON1=32; 
    20232021const MK_XBUTTON2=64; 
     
    20352033const TPM_NONOTIFY=128; 
    20362034const TPM_RETURNCMD=256; 
    2037 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
     2035static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) { 
    20382036const TPM_RECURSE=1; 
    20392037} 
     
    22752273const ICON_SMALL=0; 
    22762274const ICON_BIG=1; 
    2277 static if (_WIN32_WINNT >= 0x0501) { 
     2275static if (_WIN32_WINNT >= 0x501) { 
    22782276const ICON_SMALL2=2; 
    22792277} 
     
    23062304const LLKHF_UP=(KF_UP >> 8); 
    23072305 
    2308 static if (WINVER >= 0x0500) { 
     2306static if (WINVER >= 0x500) { 
    23092307const FLASHW_STOP=0; 
    23102308const FLASHW_CAPTION=1; 
     
    23172315const CURSOR_SHOWING=0x00000001; 
    23182316const WS_ACTIVECAPTION=0x00000001; 
    2319 static if (_WIN32_WINNT >= 0x0403) { 
     2317static if (_WIN32_WINNT >= 0x403) { 
    23202318const INPUT_MOUSE=0x00000000; 
    23212319const INPUT_KEYBOARD=0x00000001; 
    23222320const INPUT_HARDWARE=0x00000002; 
    23232321} 
    2324 static if (WINVER >= 0x0400) { 
     2322static if (WINVER >= 0x400) { 
    23252323const ENDSESSION_LOGOFF = 0x80000000; 
    23262324} 
    23272325 
    2328 static if (WINVER >= 0x0500) { 
     2326static if (WINVER >= 0x500) { 
    23292327const CHILDID_SELF   = 0; 
    23302328const OBJID_WINDOW   = 0x00000000; 
     
    23472345const GUI_POPUPMENUMODE  = 0x00000010; 
    23482346 
    2349 static if (_WIN32_WINNT >= 0x0501) { 
     2347static if (_WIN32_WINNT >= 0x501) { 
    23502348const GUI_16BITTASK      = 0x00000020; 
    23512349} 
     
    23662364const DEVICE_NOTIFY_SERVICE_HANDLE=0x00000001; 
    23672365 
    2368 static if (_WIN32_WINNT >= 0x0501) { 
     2366static if (_WIN32_WINNT >= 0x501) { 
    23692367const DEVICE_NOTIFY_ALL_INTERFACE_CLASSES=0x00000004; 
    23702368} 
     
    24152413const EVENT_OBJECT_ACCELERATORCHANGE = 0x00008012; 
    24162414 
    2417 static if (_WIN32_WINNT >= 0x0501) { 
     2415static if (_WIN32_WINNT >= 0x501) { 
    24182416const EVENT_CONSOLE_CARET             = 0x00004001; 
    24192417const EVENT_CONSOLE_UPDATE_REGION     = 0x00004002; 
     
    24322430const EVENT_MAX=0x7fffffff; 
    24332431 
    2434 }//(WINVER >= 0x0500) 
    2435  
    2436 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490)) { 
     2432}//(WINVER >= 0x500) 
     2433 
     2434static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) { 
    24372435const DWORD ASFW_ANY = -1; 
    24382436const LSFW_LOCK   = 1; 
     
    24402438} 
    24412439 
    2442 static if (_WIN32_WINNT >= 0x0500) { 
     2440static if (_WIN32_WINNT >= 0x500) { 
    24432441const LWA_COLORKEY=0x01; 
    24442442const LWA_ALPHA=0x02; 
     
    24522450const GA_ROOTOWNER = 3; 
    24532451 
    2454 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
     2452static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) { 
    24552453 
    24562454const MONITOR_DEFAULTTONULL    = 0; 
     
    24682466} 
    24692467 
    2470 static if (_WIN32_WINNT >= 0x0500) { 
     2468static if (_WIN32_WINNT >= 0x500) { 
    24712469const GR_GDIOBJECTS  = 0; 
    24722470const GR_USEROBJECTS = 1; 
    24732471} 
    24742472 
    2475 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490)) { 
     2473static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) { 
    24762474const GMMP_USE_DISPLAY_POINTS         = 1; 
    24772475const GMMP_USE_HIGH_RESOLUTION_POINTS = 2; 
    24782476} 
    24792477 
    2480 static if (_WIN32_WINNT >= 0x0501) { 
     2478static if (_WIN32_WINNT >= 0x501) { 
    24812479const PW_CLIENTONLY               = 0x00000001; 
    24822480const RIM_INPUT                   = 0x00000000; 
     
    25332531// Callbacks ---- 
    25342532extern (Windows) { 
    2535 alias BOOL function (HWND,UINT,WPARAM,LPARAM)    DLGPROC; 
    2536 alias void function (HWND,UINT,UINT,DWORD)       TIMERPROC; 
    2537 alias BOOL function (HDC,LPARAM,int)             GRAYSTRINGPROC; 
    2538 alias LRESULT function (int,WPARAM,LPARAM)       HOOKPROC; 
    2539 alias BOOL function (HWND,LPCSTR,HANDLE)         PROPENUMPROCA; 
    2540 alias BOOL function (HWND,LPCWSTR,HANDLE)        PROPENUMPROCW; 
    2541 alias BOOL function (HWND,LPSTR,HANDLE,DWORD)    PROPENUMPROCEXA; 
    2542 alias BOOL function (HWND,LPWSTR,HANDLE,DWORD)   PROPENUMPROCEXW; 
    2543 alias int function (LPSTR,int,int,int)           EDITWORDBREAKPROCA; 
    2544 alias int function (LPWSTR,int,int,int)          EDITWORDBREAKPROCW; 
    2545 alias LRESULT function (HWND,UINT,WPARAM,LPARAM) WNDPROC; 
    2546 alias BOOL function (HDC,LPARAM,WPARAM,int,int)  DRAWSTATEPROC; 
    2547 alias BOOL function (HWND,LPARAM)                WNDENUMPROC; 
    2548 alias BOOL function (HWND,LPARAM)                ENUMWINDOWSPROC; 
     2533alias BOOL function (HWND, UINT, WPARAM, LPARAM)    DLGPROC; 
     2534alias void function (HWND, UINT, UINT, DWORD)       TIMERPROC; 
     2535alias BOOL function (HDC, LPARAM, int)             GRAYSTRINGPROC; 
     2536alias LRESULT function (int, WPARAM, LPARAM)       HOOKPROC; 
     2537alias BOOL function (HWND, LPCSTR, HANDLE)         PROPENUMPROCA; 
     2538alias BOOL function (HWND, LPCWSTR, HANDLE)        PROPENUMPROCW; 
     2539alias BOOL function (HWND, LPSTR, HANDLE, DWORD)    PROPENUMPROCEXA; 
     2540alias BOOL function (HWND, LPWSTR, HANDLE, DWORD)   PROPENUMPROCEXW; 
     2541alias int function (LPSTR, int, int, int)           EDITWORDBREAKPROCA; 
     2542alias int function (LPWSTR, int, int, int)          EDITWORDBREAKPROCW; 
     2543alias LRESULT function (HWND, UINT, WPARAM, LPARAM) WNDPROC; 
     2544alias BOOL function (HDC, LPARAM, WPARAM, int, int)  DRAWSTATEPROC; 
     2545alias BOOL function (HWND, LPARAM)                WNDENUMPROC; 
     2546alias BOOL function (HWND, LPARAM)                ENUMWINDOWSPROC; 
    25492547alias void function (LPHELPINFO)                 MSGBOXCALLBACK; 
    25502548 
    25512549static if (WINVER >= 0x410) { 
    2552 alias BOOL function (HMONITOR,HDC,LPRECT,LPARAM) MONITORENUMPROC; 
    2553 } 
    2554 alias BOOL function (LPSTR,LPARAM)               NAMEENUMPROCA; 
    2555 alias BOOL function (LPWSTR,LPARAM)              NAMEENUMPROCW; 
    2556 alias void function (HWND,UINT,DWORD,LRESULT)    SENDASYNCPROC; 
     2550alias BOOL function (HMONITOR, HDC, LPRECT, LPARAM) MONITORENUMPROC; 
     2551} 
     2552alias BOOL function (LPSTR, LPARAM)               NAMEENUMPROCA; 
     2553alias BOOL function (LPWSTR, LPARAM)              NAMEENUMPROCW; 
     2554alias void function (HWND, UINT, DWORD, LRESULT)    SENDASYNCPROC; 
    25572555 
    25582556alias NAMEENUMPROCA DESKTOPENUMPROCA; 
     
    25672565typedef HANDLE HDEVNOTIFY; 
    25682566 
    2569 struct ACCEL
     2567struct ACCEL
    25702568    BYTE fVirt; 
    25712569    WORD key; 
    25722570    WORD cmd; 
    25732571} 
    2574 alias ACCEL * LPACCEL; 
    2575  
    2576 struct ACCESSTIMEOUT
    2577     UINT cbSize
     2572alias ACCEL* LPACCEL; 
     2573 
     2574struct ACCESSTIMEOUT
     2575    UINT cbSize = ACCESSTIMEOUT.sizeof
    25782576    DWORD dwFlags; 
    25792577    DWORD iTimeOutMSec; 
    25802578} 
    2581 alias ACCESSTIMEOUT * LPACCESSTIMEOUT; 
    2582  
    2583 struct ANIMATIONINFO
    2584     UINT cbSize
    2585     int iMinAnimate; 
    2586 } 
    2587 alias ANIMATIONINFO * LPANIMATIONINFO; 
    2588  
    2589 struct CREATESTRUCTA
    2590     LPVOID   lpCreateParams; 
     2579alias ACCESSTIMEOUT* LPACCESSTIMEOUT; 
     2580 
     2581struct ANIMATIONINFO
     2582    UINT cbSize = ANIMATIONINFO.sizeof
     2583    int iMinAnimate; 
     2584} 
     2585alias ANIMATIONINFO* LPANIMATIONINFO; 
     2586 
     2587struct CREATESTRUCTA
     2588    LPVOID    lpCreateParams; 
    25912589    HINSTANCE hInstance; 
    2592     HMENU    hMenu; 
    2593     HWND     hwndParent; 
    2594     int    cy; 
    2595     int    cx; 
    2596     int    y; 
    2597     int    x; 
    2598     LONG     style; 
    2599     LPCSTR lpszName; 
    2600     LPCSTR   lpszClass; 
    2601     DWORD    dwExStyle; 
    2602 } 
    2603 alias CREATESTRUCTA * LPCREATESTRUCTA; 
    2604  
    2605 struct CREATESTRUCTW
    2606     LPVOID lpCreateParams; 
    2607     HINSTANCE  hInstance; 
    2608     HMENU  hMenu; 
    2609     HWND   hwndParent; 
    2610     int    cy; 
    2611     int    cx; 
    2612     int    y; 
    2613     int    x; 
    2614     LONG   style; 
    2615     LPCWSTR    lpszName; 
    2616     LPCWSTR    lpszClass; 
    2617     DWORD  dwExStyle; 
    2618 } 
    2619 alias CREATESTRUCTW * LPCREATESTRUCTW; 
    2620  
    2621 struct CBT_CREATEWNDA
     2590    HMENU     hMenu; 
     2591    HWND      hwndParent; 
     2592    int       cy; 
     2593    int       cx; 
     2594    int       y; 
     2595    int       x; 
     2596    LONG      style; 
     2597    LPCSTR    lpszName; 
     2598    LPCSTR    lpszClass; 
     2599    DWORD    dwExStyle; 
     2600} 
     2601alias CREATESTRUCTA* LPCREATESTRUCTA; 
     2602 
     2603struct CREATESTRUCTW
     2604    LPVOID    lpCreateParams; 
     2605    HINSTANCE hInstance; 
     2606    HMENU     hMenu; 
     2607    HWND      hwndParent; 
     2608    int       cy; 
     2609    int       cx; 
     2610    int       y; 
     2611    int       x; 
     2612    LONG      style; 
     2613    LPCWSTR   lpszName; 
     2614    LPCWSTR   lpszClass; 
     2615    DWORD     dwExStyle; 
     2616} 
     2617alias CREATESTRUCTW* LPCREATESTRUCTW; 
     2618 
     2619struct CBT_CREATEWNDA
    26222620    LPCREATESTRUCTA lpcs; 
    2623     HWND   hwndInsertAfter; 
    2624 } 
    2625 alias CBT_CREATEWNDA * LPCBT_CREATEWNDA; 
    2626  
    2627 struct CBT_CREATEWNDW
     2621    HWND            hwndInsertAfter; 
     2622} 
     2623alias CBT_CREATEWNDA* LPCBT_CREATEWNDA; 
     2624 
     2625struct CBT_CREATEWNDW
    26282626    LPCREATESTRUCTW lpcs; 
    2629     HWND   hwndInsertAfter; 
    2630 } 
    2631 alias CBT_CREATEWNDW * LPCBT_CREATEWNDW; 
    2632  
    2633 struct CBTACTIVATESTRUCT
     2627    HWND            hwndInsertAfter; 
     2628} 
     2629alias CBT_CREATEWNDW* LPCBT_CREATEWNDW; 
     2630 
     2631struct CBTACTIVATESTRUCT
    26342632    BOOL fMouse; 
    26352633    HWND hWndActive; 
    26362634} 
    2637 alias CBTACTIVATESTRUCT * LPCBTACTIVATESTRUCT; 
    2638  
    2639 struct CLIENTCREATESTRUCT
    2640     HANDLE hWindowMenu; 
    2641     UINT   idFirstChild; 
    2642 } 
    2643 alias CLIENTCREATESTRUCT * LPCLIENTCREATESTRUCT; 
    2644  
    2645 struct COMPAREITEMSTRUCT
    2646     UINT   CtlType; 
    2647     UINT   CtlID; 
    2648     HWND   hwndItem; 
    2649     UINT   itemID1; 
    2650     DWORD  itemData1; 
    2651     UINT   itemID2; 
    2652     DWORD  itemData2; 
    2653     DWORD  dwLocaleId; 
    2654 } 
    2655 alias COMPAREITEMSTRUCT * LPCOMPAREITEMSTRUCT; 
    2656  
    2657 struct COPYDATASTRUCT
     2635alias CBTACTIVATESTRUCT* LPCBTACTIVATESTRUCT; 
     2636 
     2637struct CLIENTCREATESTRUCT
     2638    HANDLE hWindowMenu; 
     2639    UINT   idFirstChild; 
     2640} 
     2641alias CLIENTCREATESTRUCT* LPCLIENTCREATESTRUCT; 
     2642 
     2643struct COMPAREITEMSTRUCT
     2644    UINT  CtlType; 
     2645    UINT  CtlID; 
     2646    HWND  hwndItem; 
     2647    UINT  itemID1; 
     2648    DWORD itemData1; 
     2649    UINT  itemID2; 
     2650    DWORD itemData2; 
     2651    DWORD dwLocaleId; 
     2652} 
     2653alias COMPAREITEMSTRUCT* LPCOMPAREITEMSTRUCT; 
     2654 
     2655struct COPYDATASTRUCT
    26582656    DWORD dwData; 
    26592657    DWORD cbData; 
    26602658    PVOID lpData; 
    26612659} 
    2662 alias COPYDATASTRUCT * PCOPYDATASTRUCT; 
    2663  
    2664 struct CURSORSHAPE
     2660alias COPYDATASTRUCT* PCOPYDATASTRUCT; 
     2661 
     2662struct CURSORSHAPE
    26652663    int xHotSpot; 
    26662664    int yHotSpot; 
     
    26712669    BYTE BitsPixel; 
    26722670} 
    2673 alias CURSORSHAPE * LPCURSORSHAPE; 
    2674  
    2675 struct CWPRETSTRUCT
     2671alias CURSORSHAPE* LPCURSORSHAPE; 
     2672 
     2673struct CWPRETSTRUCT
    26762674    LRESULT lResult; 
    26772675    LPARAM lParam; 
     
    26812679} 
    26822680 
    2683 struct CWPSTRUCT
     2681struct CWPSTRUCT
    26842682    LPARAM lParam; 
    26852683    WPARAM wParam; 
     
    26872685    HWND hwnd; 
    26882686} 
    2689 alias CWPSTRUCT * PCWPSTRUCT; 
    2690  
    2691 struct DEBUGHOOKINFO
     2687alias CWPSTRUCT* PCWPSTRUCT; 
     2688 
     2689struct DEBUGHOOKINFO
    26922690    DWORD idThread; 
    26932691    DWORD idThreadInstaller; 
     
    26962694    int code; 
    26972695} 
    2698 alias DEBUGHOOKINFO * PDEBUGHOOKINFO, LPDEBUGHOOKINFO; 
    2699  
    2700 struct DELETEITEMSTRUCT
     2696alias DEBUGHOOKINFO* PDEBUGHOOKINFO, LPDEBUGHOOKINFO; 
     2697 
     2698struct DELETEITEMSTRUCT
    27012699    UINT CtlType; 
    27022700    UINT CtlID; 
     
    27052703    UINT itemData; 
    27062704} 
    2707 alias DELETEITEMSTRUCT * PDELETEITEMSTRUCT, LPDELETEITEMSTRUCT; 
     2705alias DELETEITEMSTRUCT* PDELETEITEMSTRUCT, LPDELETEITEMSTRUCT; 
    27082706 
    27092707align(2): 
     
    27172715    WORD id; 
    27182716} 
    2719 alias DLGITEMTEMPLATE * LPDLGITEMTEMPLATE; 
     2717alias DLGITEMTEMPLATE* LPDLGITEMTEMPLATE; 
    27202718 
    27212719struct DLGTEMPLATE { 
     
    27282726    short cy; 
    27292727} 
    2730 alias DLGTEMPLATE * LPDLGTEMPLATE, LPDLGTEMPLATEA, LPDLGTEMPLATEW; 
    2731 alias DLGTEMPLATE * LPCDLGTEMPLATE; 
     2728alias DLGTEMPLATE* LPDLGTEMPLATE, LPDLGTEMPLATEA, LPDLGTEMPLATEW; 
     2729alias DLGTEMPLATE* LPCDLGTEMPLATE; 
    27322730 
    27332731align: 
    27342732 
    2735 struct DRAWITEMSTRUCT
    2736     UINT CtlType; 
    2737     UINT CtlID; 
    2738     UINT itemID; 
    2739     UINT itemAction; 
    2740     UINT itemState; 
    2741     HWND hwndItem; 
    2742     HDC    hDC; 
    2743     RECT rcItem; 
     2733struct DRAWITEMSTRUCT
     2734    UINT CtlType; 
     2735    UINT CtlID; 
     2736    UINT itemID; 
     2737    UINT itemAction; 
     2738    UINT itemState; 
     2739    HWND hwndItem; 
     2740    HDC   hDC; 
     2741    RECT rcItem; 
    27442742    DWORD itemData; 
    27452743} 
    2746 alias DRAWITEMSTRUCT * LPDRAWITEMSTRUCT, PDRAWITEMSTRUCT; 
     2744alias DRAWITEMSTRUCT* LPDRAWITEMSTRUCT, PDRAWITEMSTRUCT; 
    27472745 
    27482746struct DRAWTEXTPARAMS { 
    2749     UINT cbSize
    2750     int iTabLength; 
    2751     int iLeftMargin; 
    2752     int iRightMargin; 
     2747    UINT cbSize = DRAWTEXTPARAMS.sizeof
     2748    int iTabLength; 
     2749    int iLeftMargin; 
     2750    int iRightMargin; 
    27532751    UINT uiLengthDrawn; 
    27542752} 
    2755 alias DRAWTEXTPARAMS * LPDRAWTEXTPARAMS; 
    2756  
    2757 struct PAINTSTRUCT
    2758     HDC    hdc; 
    2759     BOOL fErase; 
    2760     RECT rcPaint; 
    2761     BOOL fRestore; 
    2762     BOOL fIncUpdate; 
    2763     BYTE rgbReserved[32]
    2764 } 
    2765 alias PAINTSTRUCT * LPPAINTSTRUCT; 
    2766  
    2767 struct MSG
     2753alias DRAWTEXTPARAMS* LPDRAWTEXTPARAMS; 
     2754 
     2755struct PAINTSTRUCT
     2756    HDC      hdc; 
     2757    BOOL     fErase; 
     2758    RECT     rcPaint; 
     2759    BOOL     fRestore; 
     2760    BOOL     fIncUpdate; 
     2761    BYTE[32] rgbReserved
     2762} 
     2763alias PAINTSTRUCT* LPPAINTSTRUCT; 
     2764 
     2765struct MSG
    27682766    HWND hwnd; 
    27692767    UINT message; 
     
    27732771    POINT pt; 
    27742772} 
    2775 alias MSG * LPMSG, PMSG; 
    2776  
    2777 struct ICONINFO
     2773alias MSG* LPMSG, PMSG; 
     2774 
     2775struct ICONINFO
    27782776    BOOL fIcon; 
    27792777    DWORD xHotspot; 
     
    27822780    HBITMAP hbmColor; 
    27832781} 
    2784 alias ICONINFO * PICONINFO; 
    2785  
    2786 struct NMHDR
     2782alias ICONINFO* PICONINFO; 
     2783 
     2784struct NMHDR
    27872785    HWND hwndFrom; 
    27882786    UINT idFrom; 
    27892787    UINT code; 
    27902788} 
    2791 alias NMHDR * LPNMHDR; 
    2792  
    2793 struct WNDCLASSA
     2789alias NMHDR* LPNMHDR; 
     2790 
     2791struct WNDCLASSA
    27942792    UINT style; 
    27952793    WNDPROC lpfnWndProc; 
     
    28032801    LPCSTR lpszClassName; 
    28042802} 
    2805 alias WNDCLASSA * LPWNDCLASSA, PWNDCLASSA; 
    2806  
    2807 struct WNDCLASSW
     2803alias WNDCLASSA* LPWNDCLASSA, PWNDCLASSA; 
     2804 
     2805struct WNDCLASSW
    28082806    UINT style; 
    28092807    WNDPROC lpfnWndProc; 
     
    28172815    LPCWSTR lpszClassName; 
    28182816} 
    2819 alias WNDCLASSW * LPWNDCLASSW, PWNDCLASSW; 
    2820  
    2821 struct WNDCLASSEXA
    2822     UINT cbSize
    2823     UINT style; 
    2824     WNDPROC lpfnWndProc; 
    2825     int cbClsExtra; 
    2826     int cbWndExtra; 
     2817alias WNDCLASSW* LPWNDCLASSW, PWNDCLASSW; 
     2818 
     2819struct WNDCLASSEXA
     2820    UINT      cbSize = WNDCLASSEXA.sizeof
     2821    UINT      style; 
     2822    WNDPROC   lpfnWndProc; 
     2823    int       cbClsExtra; 
     2824    int       cbWndExtra; 
    28272825    HINSTANCE hInstance; 
    2828     HICON hIcon; 
    2829     HCURSOR hCursor; 
    2830     HBRUSH hbrBackground; 
    2831     LPCSTR lpszMenuName; 
    2832     LPCSTR lpszClassName; 
    2833     HICON hIconSm; 
    2834 } 
    2835 alias WNDCLASSEXA * LPWNDCLASSEXA, PWNDCLASSEXA; 
    2836  
    2837 struct WNDCLASSEXW
    2838     UINT cbSize
    2839     UINT style; 
    2840     WNDPROC lpfnWndProc; 
    2841     int cbClsExtra; 
    2842     int cbWndExtra; 
     2826    HICON     hIcon; 
     2827    HCURSOR   hCursor; 
     2828    HBRUSH    hbrBackground; 
     2829    LPCSTR    lpszMenuName; 
     2830    LPCSTR    lpszClassName; 
     2831    HICON     hIconSm; 
     2832} 
     2833alias WNDCLASSEXA* LPWNDCLASSEXA, PWNDCLASSEXA; 
     2834 
     2835struct WNDCLASSEXW
     2836    UINT      cbSize = WNDCLASSEXW.sizeof
     2837    UINT      style; 
     2838    WNDPROC   lpfnWndProc; 
     2839    int       cbClsExtra; 
     2840    int       cbWndExtra; 
    28432841    HINSTANCE hInstance; 
    2844     HICON hIcon; 
    2845     HCURSOR hCursor; 
    2846     HBRUSH hbrBackground; 
    2847     LPCWSTR lpszMenuName; 
    2848     LPCWSTR lpszClassName; 
    2849     HICON hIconSm; 
    2850 } 
    2851 alias WNDCLASSEXW * LPWNDCLASSEXW, PWNDCLASSEXW; 
    2852  
    2853 struct MENUITEMINFOA
    2854     UINT cbSize
    2855     UINT fMask; 
    2856     UINT fType; 
    2857     UINT fState; 
    2858     UINT wID; 
    2859     HMENU hSubMenu; 
     2842    HICON     hIcon; 
     2843    HCURSOR   hCursor; 
     2844    HBRUSH    hbrBackground; 
     2845    LPCWSTR   lpszMenuName; 
     2846    LPCWSTR   lpszClassName; 
     2847    HICON     hIconSm; 
     2848} 
     2849alias WNDCLASSEXW* LPWNDCLASSEXW, PWNDCLASSEXW; 
     2850 
     2851struct MENUITEMINFOA
     2852    UINT    cbSize = MENUITEMINFOA.sizeof
     2853    UINT    fMask; 
     2854    UINT    fType; 
     2855    UINT    fState; 
     2856    UINT    wID; 
     2857    HMENU   hSubMenu; 
    28602858    HBITMAP hbmpChecked; 
    28612859    HBITMAP hbmpUnchecked; 
    2862     DWORD dwItemData; 
    2863     LPSTR dwTypeData; 
    2864     UINT cch; 
    2865 static if (_WIN32_WINNT >= 0x0500) { 
    2866     HBITMAP hbmpItem; 
    2867 
    2868 } 
    2869 alias MENUITEMINFOA * LPMENUITEMINFOA; 
    2870 alias MENUITEMINFOA * LPCMENUITEMINFOA; 
    2871  
    2872 struct MENUITEMINFOW
    2873     UINT cbSize
    2874     UINT fMask; 
    2875     UINT fType; 
    2876     UINT fState; 
    2877     UINT wID; 
    2878     HMENU hSubMenu; 
     2860    DWORD   dwItemData; 
     2861    LPSTR   dwTypeData; 
     2862    UINT    cch; 
     2863   static if (_WIN32_WINNT >= 0x500) { 
     2864       HBITMAP hbmpItem; 
     2865   
     2866} 
     2867alias MENUITEMINFOA* LPMENUITEMINFOA; 
     2868alias MENUITEMINFOA* LPCMENUITEMINFOA; 
     2869 
     2870struct MENUITEMINFOW
     2871    UINT    cbSize = MENUITEMINFOW.sizeof
     2872    UINT    fMask; 
     2873    UINT    fType; 
     2874    UINT    fState; 
     2875    UINT    wID; 
     2876    HMENU   hSubMenu; 
    28792877    HBITMAP hbmpChecked; 
    28802878    HBITMAP hbmpUnchecked; 
    2881     DWORD dwItemData; 
    2882     LPWSTR dwTypeData; 
    2883     UINT cch; 
    2884 static if (_WIN32_WINNT >= 0x0500) { 
    2885     HBITMAP hbmpItem; 
    2886 
    2887 } 
    2888 alias MENUITEMINFOW * LPMENUITEMINFOW; 
    2889 alias  MENUITEMINFOW *LPCMENUITEMINFOW; 
    2890  
    2891 struct SCROLLINFO
     2879    DWORD   dwItemData; 
     2880    LPWSTR dwTypeData; 
     2881    UINT    cch; 
     2882   static if (_WIN32_WINNT >= 0x500) { 
     2883       HBITMAP hbmpItem; 
     2884   
     2885} 
     2886alias MENUITEMINFOW* LPMENUITEMINFOW; 
     2887alias  MENUITEMINFOW* LPCMENUITEMINFOW; 
     2888 
     2889struct SCROLLINFO
    28922890    UINT cbSize; 
    28932891    UINT fMask; 
     
    28982896    int nTrackPos; 
    28992897} 
    2900 alias SCROLLINFO * LPSCROLLINFO; 
    2901 alias SCROLLINFO * LPCSCROLLINFO; 
    2902  
    2903 struct WINDOWPLACEMENT
     2898alias SCROLLINFO* LPSCROLLINFO; 
     2899alias SCROLLINFO* LPCSCROLLINFO; 
     2900 
     2901struct WINDOWPLACEMENT
    29042902    UINT length; 
    29052903    UINT flags; 
     
    29092907    RECT rcNormalPosition; 
    29102908} 
    2911 alias WINDOWPLACEMENT * LPWINDOWPLACEMENT, PWINDOWPLACEMENT; 
     2909alias WINDOWPLACEMENT* LPWINDOWPLACEMENT, PWINDOWPLACEMENT; 
    29122910 
    29132911struct MENUITEMTEMPLATEHEADER { 
     
    29242922alias void MENUTEMPLATE, MENUTEMPLATEA, MENUTEMPLATEW; 
    29252923 
    2926 alias MENUTEMPLATE *LPMENUTEMPLATEA, LPMENUTEMPLATEW, LPMENUTEMPLATE; 
    2927  
    2928 struct HELPINFO
     2924alias MENUTEMPLATE* LPMENUTEMPLATEA, LPMENUTEMPLATEW, LPMENUTEMPLATE; 
     2925 
     2926struct HELPINFO
    29292927    UINT cbSize; 
    29302928    int iContextType; 
     
    29342932    POINT MousePos; 
    29352933} 
    2936 alias HELPINFO * LPHELPINFO; 
     2934alias HELPINFO* LPHELPINFO; 
    29372935 
    29382936struct MSGBOXPARAMSA { 
     
    29482946    DWORD dwLanguageId; 
    29492947} 
    2950 alias MSGBOXPARAMSA * PMSGBOXPARAMSA, LPMSGBOXPARAMSA; 
     2948alias MSGBOXPARAMSA* PMSGBOXPARAMSA, LPMSGBOXPARAMSA; 
    29512949 
    29522950struct MSGBOXPARAMSW { 
     
    29622960    DWORD dwLanguageId; 
    29632961} 
    2964 alias MSGBOXPARAMSW * PMSGBOXPARAMSW, LPMSGBOXPARAMSW; 
    2965  
    2966 struct USEROBJECTFLAGS
     2962alias MSGBOXPARAMSW* PMSGBOXPARAMSW, LPMSGBOXPARAMSW; 
     2963 
     2964struct USEROBJECTFLAGS
    29672965    BOOL fInherit; 
    29682966    BOOL fReserved; 
     
    29702968} 
    29712969 
    2972 struct FILTERKEYS
     2970struct FILTERKEYS
    29732971    UINT cbSize; 
    29742972    DWORD dwFlags; 
     
    29792977} 
    29802978 
    2981 struct HIGHCONTRASTA
     2979struct HIGHCONTRASTA
    29822980    UINT cbSize; 
    29832981    DWORD dwFlags; 
    29842982    LPSTR lpszDefaultScheme; 
    29852983} 
    2986 alias HIGHCONTRASTA * LPHIGHCONTRASTA; 
    2987  
    2988 struct HIGHCONTRASTW
     2984alias HIGHCONTRASTA* LPHIGHCONTRASTA; 
     2985 
     2986struct HIGHCONTRASTW
    29892987    UINT cbSize; 
    29902988    DWORD dwFlags; 
    29912989    LPWSTR lpszDefaultScheme; 
    29922990} 
    2993 alias HIGHCONTRASTW * LPHIGHCONTRASTW; 
    2994  
    2995 struct ICONMETRICSA
     2991alias HIGHCONTRASTW* LPHIGHCONTRASTW; 
     2992 
     2993struct ICONMETRICSA
    29962994    UINT cbSize; 
    29972995    int iHorzSpacing; 
     
    30002998    LOGFONTA lfFont; 
    30012999} 
    3002 alias ICONMETRICSA * LPICONMETRICSA; 
    3003  
    3004 struct ICONMETRICSW
     3000alias ICONMETRICSA* LPICONMETRICSA; 
     3001 
     3002struct ICONMETRICSW
    30053003    UINT cbSize; 
    30063004    int iHorzSpacing; 
     
    30093007    LOGFONTW lfFont; 
    30103008} 
    3011 alias ICONMETRICSW * LPICONMETRICSW; 
    3012  
    3013 struct MINIMIZEDMETRICS
     3009alias ICONMETRICSW* LPICONMETRICSW; 
     3010 
     3011struct MINIMIZEDMETRICS
    30143012    UINT cbSize; 
    30153013    int iWidth; 
     
    30183016    int iArrange; 
    30193017} 
    3020 alias MINIMIZEDMETRICS * LPMINIMIZEDMETRICS; 
    3021  
    3022 struct MOUSEKEYS
     3018alias MINIMIZEDMETRICS* LPMINIMIZEDMETRICS; 
     3019 
     3020struct MOUSEKEYS
    30233021    UINT cbSize; 
    30243022    DWORD dwFlags; 
     
    30293027    DWORD dwReserved2; 
    30303028} 
    3031 alias MOUSEKEYS * LPMOUSEKEYS; 
    3032  
    3033 struct NONCLIENTMETRICSA
     3029alias MOUSEKEYS* LPMOUSEKEYS; 
     3030 
     3031struct NONCLIENTMETRICSA
    30343032    UINT cbSize; 
    30353033    int iBorderWidth; 
     
    30483046    LOGFONTA lfMessageFont; 
    30493047} 
    3050 alias NONCLIENTMETRICSA * LPNONCLIENTMETRICSA; 
    3051  
    3052 struct NONCLIENTMETRICSW
     3048alias NONCLIENTMETRICSA* LPNONCLIENTMETRICSA; 
     3049 
     3050struct NONCLIENTMETRICSW
    30533051    UINT cbSize; 
    30543052    int iBorderWidth; 
     
    30673065    LOGFONTW lfMessageFont; 
    30683066} 
    3069 alias NONCLIENTMETRICSW * LPNONCLIENTMETRICSW; 
    3070  
    3071 struct SERIALKEYSA
     3067alias NONCLIENTMETRICSW* LPNONCLIENTMETRICSW; 
     3068 
     3069struct SERIALKEYSA
    30723070    UINT cbSize; 
    30733071    DWORD dwFlags; 
     
    30783076    UINT iActive; 
    30793077} 
    3080 alias SERIALKEYSA * LPSERIALKEYSA; 
    3081  
    3082 struct SERIALKEYSW
     3078alias SERIALKEYSA* LPSERIALKEYSA; 
     3079 
     3080struct SERIALKEYSW
    30833081    UINT cbSize; 
    30843082    DWORD dwFlags; 
     
    30893087    UINT iActive; 
    30903088} 
    3091 alias SERIALKEYSW * LPSERIALKEYSW; 
    3092  
    3093 struct SOUNDSENTRYA
     3089alias SERIALKEYSW* LPSERIALKEYSW; 
     3090 
     3091struct SOUNDSENTRYA
    30943092    UINT cbSize; 
    30953093    DWORD dwFlags; 
     
    31053103    DWORD iWindowsEffectOrdinal; 
    31063104} 
    3107 alias SOUNDSENTRYA * LPSOUNDSENTRYA; 
    3108  
    3109 struct SOUNDSENTRYW
     3105alias SOUNDSENTRYA* LPSOUNDSENTRYA; 
     3106 
     3107struct SOUNDSENTRYW
    31103108    UINT cbSize; 
    31113109    DWORD dwFlags; 
     
    31213119    DWORD iWindowsEffectOrdinal; 
    31223120} 
    3123 alias SOUNDSENTRYW * LPSOUNDSENTRYW; 
    3124  
    3125 struct STICKYKEYS
     3121alias SOUNDSENTRYW* LPSOUNDSENTRYW; 
     3122 
     3123struct STICKYKEYS
    31263124    DWORD cbSize; 
    31273125    DWORD dwFlags; 
    31283126} 
    3129 alias STICKYKEYS * LPSTICKYKEYS; 
    3130  
    3131 struct TOGGLEKEYS
     3127alias STICKYKEYS* LPSTICKYKEYS; 
     3128 
     3129struct TOGGLEKEYS
    31323130    DWORD cbSize; 
    31333131    DWORD dwFlags; 
    31343132} 
    31353133 
    3136 struct MOUSEHOOKSTRUCT
     3134struct MOUSEHOOKSTRUCT
    31373135    POINT pt; 
    31383136    HWND hwnd; 
     
    31403138    DWORD dwExtraInfo; 
    31413139} 
    3142 alias MOUSEHOOKSTRUCT * LPMOUSEHOOKSTRUCT, PMOUSEHOOKSTRUCT; 
    3143  
    3144 struct TRACKMOUSEEVENT
     3140alias MOUSEHOOKSTRUCT* LPMOUSEHOOKSTRUCT, PMOUSEHOOKSTRUCT; 
     3141 
     3142struct TRACKMOUSEEVENT
    31453143    DWORD cbSize; 
    31463144    DWORD dwFlags; 
     
    31483146    DWORD dwHoverTime; 
    31493147} 
    3150 alias TRACKMOUSEEVENT * LPTRACKMOUSEEVENT; 
    3151  
    3152 struct TPMPARAMS
     3148alias TRACKMOUSEEVENT* LPTRACKMOUSEEVENT; 
     3149 
     3150struct TPMPARAMS
    31533151    UINT cbSize; 
    31543152    RECT rcExclude; 
    31553153} 
    3156 alias TPMPARAMS * LPTPMPARAMS; 
    3157  
    3158 struct EVENTMSG
     3154alias TPMPARAMS* LPTPMPARAMS; 
     3155 
     3156struct EVENTMSG
    31593157    UINT message; 
    31603158    UINT paramL; 
     
    31633161    HWND hwnd; 
    31643162} 
    3165 alias EVENTMSG * PEVENTMSGMSG, LPEVENTMSGMSG, PEVENTMSG, LPEVENTMSG; 
    3166  
    3167 struct WINDOWPOS
     3163alias EVENTMSG* PEVENTMSGMSG, LPEVENTMSGMSG, PEVENTMSG, LPEVENTMSG; 
     3164 
     3165struct WINDOWPOS
    31683166    HWND hwnd; 
    31693167    HWND hwndInsertAfter; 
     
    31743172    UINT flags; 
    31753173} 
    3176 alias WINDOWPOS * PWINDOWPOS, LPWINDOWPOS; 
    3177  
    3178 struct NCCALCSIZE_PARAMS
     3174alias WINDOWPOS* PWINDOWPOS, LPWINDOWPOS; 
     3175 
     3176struct NCCALCSIZE_PARAMS
    31793177    RECT rgrc[3]; 
    31803178    PWINDOWPOS lppos; 
    31813179} 
    3182 alias NCCALCSIZE_PARAMS * LPNCCALCSIZE_PARAMS; 
    3183  
    3184 struct MDICREATESTRUCTA
     3180alias NCCALCSIZE_PARAMS* LPNCCALCSIZE_PARAMS; 
     3181 
     3182struct MDICREATESTRUCTA
    31853183    LPCSTR szClass; 
    31863184    LPCSTR szTitle; 
     
    31933191    LPARAM lParam; 
    31943192} 
    3195 alias MDICREATESTRUCTA * LPMDICREATESTRUCTA; 
    3196  
    3197 struct MDICREATESTRUCTW
     3193alias MDICREATESTRUCTA* LPMDICREATESTRUCTA; 
     3194 
     3195struct MDICREATESTRUCTW
    31983196    LPCWSTR szClass; 
    31993197    LPCWSTR szTitle; 
     
    32063204    LPARAM lParam; 
    32073205} 
    3208 alias MDICREATESTRUCTW * LPMDICREATESTRUCTW; 
    3209  
    3210 struct MINMAXINFO
     3206alias MDICREATESTRUCTW* LPMDICREATESTRUCTW; 
     3207 
     3208struct MINMAXINFO
    32113209    POINT ptReserved; 
    32123210    POINT ptMaxSize; 
     
    32153213    POINT ptMaxTrackSize; 
    32163214} 
    3217 alias MINMAXINFO * PMINMAXINFO, LPMINMAXINFO; 
    3218  
    3219 struct MDINEXTMENU
     3215alias MINMAXINFO* PMINMAXINFO, LPMINMAXINFO; 
     3216 
     3217struct MDINEXTMENU
    32203218    HMENU hmenuIn; 
    32213219    HMENU hmenuNext; 
    32223220    HWND hwndNext; 
    32233221} 
    3224 alias MDINEXTMENU * PMDINEXTMENU, LPMDINEXTMENU; 
    3225  
    3226 struct MEASUREITEMSTRUCT
     3222alias MDINEXTMENU* PMDINEXTMENU, LPMDINEXTMENU; 
     3223 
     3224struct MEASUREITEMSTRUCT
    32273225    UINT CtlType; 
    32283226    UINT CtlID; 
     
    32323230    DWORD itemData; 
    32333231} 
    3234 alias MEASUREITEMSTRUCT * PMEASUREITEMSTRUCT, LPMEASUREITEMSTRUCT; 
    3235  
    3236 struct DROPSTRUCT
     3232alias MEASUREITEMSTRUCT* PMEASUREITEMSTRUCT, LPMEASUREITEMSTRUCT; 
     3233 
     3234struct DROPSTRUCT
    32373235    HWND hwndSource; 
    32383236    HWND hwndSink; 
     
    32423240    DWORD dwControlData; 
    32433241} 
    3244 alias DROPSTRUCT * PDROPSTRUCT, LPDROPSTRUCT; 
     3242alias DROPSTRUCT* PDROPSTRUCT, LPDROPSTRUCT; 
    32453243 
    32463244alias DWORD HELPPOLY; 
    32473245 
    3248 struct MULTIKEYHELPA
     3246struct MULTIKEYHELPA
    32493247    DWORD mkSize; 
    32503248    CHAR mkKeylist; 
    32513249    CHAR szKeyphrase[1]; 
    32523250} 
    3253 alias MULTIKEYHELPA * PMULTIKEYHELPA, LPMULTIKEYHELPA; 
    3254  
    3255 struct MULTIKEYHELPW
     3251alias MULTIKEYHELPA* PMULTIKEYHELPA, LPMULTIKEYHELPA; 
     3252 
     3253struct MULTIKEYHELPW
    32563254    DWORD mkSize; 
    32573255    WCHAR mkKeylist; 
    32583256    WCHAR szKeyphrase[1]; 
    32593257} 
    3260 alias MULTIKEYHELPW * PMULTIKEYHELPW, LPMULTIKEYHELPW; 
    3261  
    3262 struct HELPWININFOA
     3258alias MULTIKEYHELPW* PMULTIKEYHELPW, LPMULTIKEYHELPW; 
     3259 
     3260struct HELPWININFOA
    32633261    int wStructSize; 
    32643262    int x; 
     
    32693267    CHAR rgchMember[2]; 
    32703268} 
    3271 alias HELPWININFOA * PHELPWININFOA, LPHELPWININFOA; 
    3272  
    3273 struct HELPWININFOW
     3269alias HELPWININFOA* PHELPWININFOA, LPHELPWININFOA; 
     3270 
     3271struct HELPWININFOW
    32743272    int wStructSize; 
    32753273    int x; 
     
    32803278    WCHAR rgchMember[2]; 
    32813279} 
    3282 alias HELPWININFOW * PHELPWININFOW, LPHELPWININFOW; 
    3283  
    3284 struct STYLESTRUCT
     3280alias HELPWININFOW* PHELPWININFOW, LPHELPWININFOW; 
     3281 
     3282struct STYLESTRUCT
    32853283    DWORD styleOld; 
    32863284    DWORD styleNew; 
    32873285} 
    3288 alias STYLESTRUCT * LPSTYLESTRUCT; 
    3289  
    3290 struct ALTTABINFO
     3286alias STYLESTRUCT* LPSTYLESTRUCT; 
     3287 
     3288struct ALTTABINFO
    32913289    DWORD cbSize; 
    32923290    int   cItems; 
     
    32993297    POINT ptStart; 
    33003298} 
    3301 alias ALTTABINFO * PALTTABINFO, LPALTTABINFO; 
    3302  
    3303 struct COMBOBOXINFO
     3299alias ALTTABINFO* PALTTABINFO, LPALTTABINFO; 
     3300 
     3301struct COMBOBOXINFO
    33043302    DWORD cbSize; 
    33053303    RECT rcItem; 
     
    33103308    HWND hwndList; 
    33113309} 
    3312 alias COMBOBOXINFO * PCOMBOBOXINFO, LPCOMBOBOXINFO; 
    3313  
    3314 struct CURSORINFO
     3310alias COMBOBOXINFO* PCOMBOBOXINFO, LPCOMBOBOXINFO; 
     3311 
     3312struct CURSORINFO
    33153313    DWORD cbSize; 
    33163314    DWORD flags; 
     
    33183316    POINT ptScreenPos; 
    33193317} 
    3320 alias CURSORINFO * PCURSORINFO, LPCURSORINFO; 
    3321  
    3322 struct MENUBARINFO
     3318alias CURSORINFO* PCURSORINFO, LPCURSORINFO; 
     3319 
     3320struct MENUBARINFO
    33233321    DWORD cbSize; 
    33243322    RECT  rcBar; 
     
    33333331    void fFocused(bool b) { bf_ = b ? (bf_ | 2) : bf_ & 0xFD; } 
    33343332} 
    3335 alias MENUBARINFO * PMENUBARINFO; 
    3336  
    3337 struct MENUINFO
     3333alias MENUBARINFO* PMENUBARINFO; 
     3334 
     3335struct MENUINFO
    33383336    DWORD cbSize; 
    33393337    DWORD fMask; 
     
    33443342    ULONG_PTR dwMenuData; 
    33453343} 
    3346 alias MENUINFO * LPMENUINFO, LPCMENUINFO; 
     3344alias MENUINFO* LPMENUINFO, LPCMENUINFO; 
    33473345 
    33483346 
    33493347const CCHILDREN_SCROLLBAR=5; 
    33503348 
    3351 struct SCROLLBARINFO
     3349struct SCROLLBARINFO
    33523350    DWORD cbSize; 
    33533351    RECT  rcScrollBar; 
     
    33583356    DWORD rgstate[CCHILDREN_SCROLLBAR+1]; 
    33593357} 
    3360 alias SCROLLBARINFO * PSCROLLBARINFO, LPSCROLLBARINFO; 
     3358alias SCROLLBARINFO* PSCROLLBARINFO, LPSCROLLBARINFO; 
    33613359 
    33623360const CCHILDREN_TITLEBAR=5; 
    33633361 
    3364 struct TITLEBARINFO
    3365     DWORD cbSize
     3362struct TITLEBARINFO
     3363    DWORD cbSize = TITLEBARINFO.sizeof
    33663364    RECT  rcTitleBar; 
    3367     DWORD rgstate[CCHILDREN_TITLEBAR+1]
    3368 } 
    3369 alias TITLEBARINFO * PTITLEBARINFO, LPTITLEBARINFO; 
    3370  
    3371 struct WINDOWINFO
    3372     DWORD cbSize
     3365    DWORD[CCHILDREN_TITLEBAR+1] rgstate
     3366} 
     3367alias TITLEBARINFO* PTITLEBARINFO, LPTITLEBARINFO; 
     3368 
     3369struct WINDOWINFO
     3370    DWORD cbSize = WINDOWINFO.sizeof
    33733371    RECT  rcWindow; 
    33743372    RECT  rcClient; 
     
    33813379    WORD  wCreatorVersion; 
    33823380} 
    3383 alias WINDOWINFO * PWINDOWINFO, LPWINDOWINFO; 
    3384  
    3385 struct LASTINPUTINFO
     3381alias WINDOWINFO* PWINDOWINFO, LPWINDOWINFO; 
     3382 
     3383struct LASTINPUTINFO
    33863384    UINT cbSize; 
    33873385    DWORD dwTime; 
    33883386} 
    3389 alias LASTINPUTINFO * PLASTINPUTINFO; 
    3390  
    3391 struct MONITORINFO
     3387alias LASTINPUTINFO* PLASTINPUTINFO; 
     3388 
     3389struct MONITORINFO
    33923390    DWORD cbSize; 
    33933391    RECT rcMonitor; 
     
    33953393    DWORD dwFlags; 
    33963394} 
    3397 alias MONITORINFO * LPMONITORINFO; 
     3395alias MONITORINFO* LPMONITORINFO; 
    33983396 
    33993397const CCHDEVICENAME=32; 
    34003398 
    3401 struct MONITORINFOEXA
    3402     DWORD  cbSize
    3403     RECT   rcMonitor; 
    3404     RECT   rcWork; 
    3405     DWORD  dwFlags; 
    3406     CHAR   szDevice[CCHDEVICENAME]
    3407 } 
    3408 alias MONITORINFOEXA * LPMONITORINFOEXA; 
    3409  
    3410 struct MONITORINFOEXW
    3411     DWORD  cbSize
    3412     RECT   rcMonitor; 
    3413     RECT   rcWork; 
    3414     DWORD  dwFlags; 
    3415     WCHAR  szDevice[CCHDEVICENAME]
    3416 } 
    3417 alias MONITORINFOEXW * LPMONITORINFOEXW; 
    3418  
    3419 struct KBDLLHOOKSTRUCT
     3399struct MONITORINFOEXA
     3400    DWORD cbSize = MONITORINFOEXA.sizeof
     3401    RECT  rcMonitor; 
     3402    RECT  rcWork; 
     3403    DWORD dwFlags; 
     3404    CHAR[CCHDEVICENAME] szDevice
     3405} 
     3406alias MONITORINFOEXA* LPMONITORINFOEXA; 
     3407 
     3408struct MONITORINFOEXW
     3409    DWORD cbSize = MONITORINFOEXW.sizeof
     3410    RECT  rcMonitor; 
     3411    RECT  rcWork; 
     3412    DWORD dwFlags; 
     3413    WCHAR[CCHDEVICENAME] szDevice
     3414} 
     3415alias MONITORINFOEXW* LPMONITORINFOEXW; 
     3416 
     3417struct KBDLLHOOKSTRUCT
    34203418    DWORD vkCode; 
    34213419    DWORD scanCode; 
     
    34243422    DWORD dwExtraInfo; 
    34253423} 
    3426 alias KBDLLHOOKSTRUCT * LPKBDLLHOOKSTRUCT, PKBDLLHOOKSTRUCT; 
    3427  
    3428 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
     3424alias KBDLLHOOKSTRUCT* LPKBDLLHOOKSTRUCT, PKBDLLHOOKSTRUCT; 
     3425 
     3426static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) { 
    34293427 
    34303428struct FLASHWINFO { 
     
    34353433    DWORD dwTimeout; 
    34363434} 
    3437 alias FLASHWINFO * PFLASHWINFO; 
    3438  
    3439 } 
    3440  
    3441 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490)) { 
    3442  
    3443 struct MOUSEMOVEPOINT
     3435alias FLASHWINFO* PFLASHWINFO; 
     3436 
     3437} 
     3438 
     3439static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) { 
     3440 
     3441struct MOUSEMOVEPOINT
    34443442    int x; 
    34453443    int y; 
     
    34473445    ULONG_PTR dwExtraInfo; 
    34483446} 
    3449 alias MOUSEMOVEPOINT * PMOUSEMOVEPOINT, LPMOUSEMOVEPOINT; 
    3450 } 
    3451  
    3452 static if (_WIN32_WINNT >= 0x0403) { 
    3453 struct MOUSEINPUT
     3447alias MOUSEMOVEPOINT* PMOUSEMOVEPOINT, LPMOUSEMOVEPOINT; 
     3448} 
     3449 
     3450static if (_WIN32_WINNT >= 0x403) { 
     3451struct MOUSEINPUT
    34543452    LONG dx; 
    34553453    LONG dy; 
     
    34593457    ULONG_PTR dwExtraInfo; 
    34603458} 
    3461 alias MOUSEINPUT * PMOUSEINPUT; 
    3462  
    3463 struct KEYBDINPUT
     3459alias MOUSEINPUT* PMOUSEINPUT; 
     3460 
     3461struct KEYBDINPUT
    34643462    WORD wVk; 
    34653463    WORD wScan; 
     
    34683466    ULONG_PTR dwExtraInfo; 
    34693467} 
    3470 alias KEYBDINPUT * PKEYBDINPUT; 
    3471  
    3472 struct HARDWAREINPUT
     3468alias KEYBDINPUT* PKEYBDINPUT; 
     3469 
     3470struct HARDWAREINPUT
    34733471    DWORD uMsg; 
    34743472    WORD wParamL; 
    34753473    WORD wParamH; 
    34763474} 
    3477 alias HARDWAREINPUT * PHARDWAREINPUT; 
    3478  
    3479 struct INPUT
     3475alias HARDWAREINPUT* PHARDWAREINPUT; 
     3476 
     3477struct INPUT
    34803478    DWORD type; 
    34813479    union { 
     
    34853483    } 
    34863484} 
    3487 alias INPUT * PINPUT, LPINPUT; 
    3488 }// (_WIN32_WINNT >= 0x0403) 
    3489  
    3490 static if (WINVER >= 0x0500) { 
    3491 struct GUITHREADINFO
     3485alias INPUT* PINPUT, LPINPUT; 
     3486}// (_WIN32_WINNT >= 0x403) 
     3487 
     3488static if (WINVER >= 0x500) { 
     3489struct GUITHREADINFO
    34923490    DWORD cbSize; 
    34933491    DWORD flags; 
     
    35003498    RECT rcCaret; 
    35013499} 
    3502 alias GUITHREADINFO * PGUITHREADINFO, LPGUITHREADINFO; 
     3500alias GUITHREADINFO* PGUITHREADINFO, LPGUITHREADINFO; 
    35033501extern (Windows) { 
    3504 alias void function (HWINEVENTHOOK,DWORD,HWND,LONG,LONG,DWORD,DWORD) WINEVENTPROC; 
    3505 } 
    3506  
    3507 }// (WINVER >= 0x0500) 
    3508  
    3509 static if (_WIN32_WINNT >= 0x0501) { 
     3502alias void function (HWINEVENTHOOK, DWORD, HWND, LONG, LONG, DWORD, DWORD) WINEVENTPROC; 
     3503} 
     3504 
     3505}// (WINVER >= 0x500) 
     3506 
     3507static if (_WIN32_WINNT >= 0x501) { 
    35103508struct BSMINFO { 
    35113509    UINT  cbSize; 
     
    35143512    LUID  luid; 
    35153513} 
    3516 alias BSMINFO * PBSMINFO; 
     3514alias BSMINFO* PBSMINFO; 
    35173515 
    35183516typedef HANDLE HRAWINPUT; 
    35193517 
    3520 struct RAWINPUTHEADER
     3518struct RAWINPUTHEADER
    35213519    DWORD dwType; 
    35223520    DWORD dwSize; 
     
    35243522    WPARAM wParam; 
    35253523} 
    3526 alias RAWINPUTHEADER * PRAWINPUTHEADER; 
    3527  
    3528 struct RAWMOUSE
     3524alias RAWINPUTHEADER* PRAWINPUTHEADER; 
     3525 
     3526struct RAWMOUSE
    35293527    USHORT usFlags; 
    35303528    union { 
     
    35403538    ULONG ulExtraInformation; 
    35413539} 
    3542 alias RAWMOUSE * PRAWMOUSE, LPRAWMOUSE; 
    3543  
    3544 struct RAWKEYBOARD
     3540alias RAWMOUSE* PRAWMOUSE, LPRAWMOUSE; 
     3541 
     3542struct RAWKEYBOARD
    35453543    USHORT MakeCode; 
    35463544    USHORT Flags; 
     
    35503548    ULONG ExtraInformation; 
    35513549} 
    3552 alias RAWKEYBOARD * PRAWKEYBOARD, LPRAWKEYBOARD; 
    3553  
    3554 struct RAWHID
     3550alias RAWKEYBOARD* PRAWKEYBOARD, LPRAWKEYBOARD; 
     3551 
     3552struct RAWHID
    35553553    DWORD dwSizeHid; 
    35563554    DWORD dwCount; 
    35573555    BYTE bRawData; 
    35583556} 
    3559 alias RAWHID * PRAWHID, LPRAWHID; 
    3560  
    3561 struct RAWINPUT
     3557alias RAWHID* PRAWHID, LPRAWHID; 
     3558 
     3559struct RAWINPUT
    35623560    RAWINPUTHEADER header; 
    3563     union data
     3561    union data
    35643562        RAWMOUSE    mouse; 
    35653563        RAWKEYBOARD keyboard; 
     
    35673565    } 
    35683566} 
    3569 alias RAWINPUT * PRAWINPUT, LPRAWINPUT; 
    3570  
    3571 struct RAWINPUTDEVICE
     3567alias RAWINPUT* PRAWINPUT, LPRAWINPUT; 
     3568 
     3569struct RAWINPUTDEVICE
    35723570    USHORT usUsagePage; 
    35733571    USHORT usUsage; 
     
    35753573    HWND hwndTarget; 
    35763574} 
    3577 alias RAWINPUTDEVICE * PRAWINPUTDEVICE, LPRAWINPUTDEVICE; 
    3578 alias RAWINPUTDEVICE *PCRAWINPUTDEVICE; 
    3579  
    3580 struct RAWINPUTDEVICELIST
     3575alias RAWINPUTDEVICE* PRAWINPUTDEVICE, LPRAWINPUTDEVICE; 
     3576alias RAWINPUTDEVICE* PCRAWINPUTDEVICE; 
     3577 
     3578struct RAWINPUTDEVICELIST
    35813579    HANDLE hDevice; 
    35823580    DWORD dwType; 
    35833581} 
    3584 alias RAWINPUTDEVICELIST * PRAWINPUTDEVICELIST; 
    3585 }// (_WIN32_WINNT >= 0x0501) 
     3582alias RAWINPUTDEVICELIST* PRAWINPUTDEVICELIST; 
     3583}// (_WIN32_WINNT >= 0x501) 
    35863584 
    35873585struct MSLLHOOKSTRUCT { 
     
    35923590    ULONG_PTR dwExtraInfo; 
    35933591} 
    3594 alias MSLLHOOKSTRUCT * PMSLLHOOKSTRUCT; 
     3592alias MSLLHOOKSTRUCT* PMSLLHOOKSTRUCT; 
    35953593 
    35963594alias CharToOemA AnsiToOem; 
     
    36093607alias MAKELONG MAKELRESULT; 
    36103608 
    3611 //MACRO #define POINTSTOPOINT(p,ps) { (p).x=LOWORD(*(DWORD *)&ps); (p).y=HIWORD(*(DWORD *)&ps); } 
    3612 //MACRO #define POINTTOPOINTS(p) ((POINTS)MAKELONG((p).x,(p).y)) 
     3609//MACRO #define POINTSTOPOINT(p, ps) { (p).x=LOWORD(*(DWORD* )&ps); (p).y=HIWORD(*(DWORD* )&ps); } 
     3610//MACRO #define POINTTOPOINTS(p) ((POINTS)MAKELONG((p).x, (p).y)) 
    36133611 
    36143612extern (Windows) { 
    36153613 
    3616 HKL ActivateKeyboardLayout(HKL,UINT); 
    3617 BOOL AdjustWindowRect(LPRECT,DWORD,BOOL); 
    3618 BOOL AdjustWindowRectEx(LPRECT,DWORD,BOOL,DWORD); 
     3614HKL ActivateKeyboardLayout(HKL, UINT); 
     3615BOOL AdjustWindowRect(LPRECT, DWORD, BOOL); 
     3616BOOL AdjustWindowRectEx(LPRECT, DWORD, BOOL, DWORD); 
    36193617BOOL AnyPopup(); 
    3620 BOOL AppendMenuA(HMENU,UINT,UINT_PTR,LPCSTR); 
    3621 BOOL AppendMenuW(HMENU,UINT,UINT_PTR,LPCWSTR); 
     3618BOOL AppendMenuA(HMENU, UINT, UINT_PTR, LPCSTR); 
     3619BOOL AppendMenuW(HMENU, UINT, UINT_PTR, LPCWSTR); 
    36223620UINT ArrangeIconicWindows(HWND); 
    3623 BOOL AttachThreadInput(DWORD,DWORD,BOOL); 
     3621BOOL AttachThreadInput(DWORD, DWORD, BOOL); 
    36243622HDWP BeginDeferWindowPos(int); 
    3625 HDC BeginPaint(HWND,LPPAINTSTRUCT); 
     3623HDC BeginPaint(HWND, LPPAINTSTRUCT); 
    36263624BOOL BringWindowToTop(HWND); 
    3627 BOOL CallMsgFilterA(LPMSG,INT); 
    3628 BOOL CallMsgFilterW(LPMSG,INT); 
    3629 LRESULT CallNextHookEx(HHOOK,int,WPARAM,LPARAM); 
    3630 LRESULT CallWindowProcA(WNDPROC,HWND,UINT,WPARAM,LPARAM); 
    3631 LRESULT CallWindowProcW(WNDPROC,HWND,UINT,WPARAM,LPARAM); 
    3632 WORD CascadeWindows(HWND,UINT,LPCRECT,UINT, HWND*); 
    3633 BOOL ChangeClipboardChain(HWND,HWND); 
    3634  
    3635 LONG ChangeDisplaySettingsA(PDEVMODEA,DWORD); 
    3636 LONG ChangeDisplaySettingsW(PDEVMODEW,DWORD); 
    3637 LONG ChangeDisplaySettingsExA(LPCSTR,LPDEVMODEA,HWND,DWORD,LPVOID); 
    3638 LONG ChangeDisplaySettingsExW(LPCWSTR,LPDEVMODEW,HWND,DWORD,LPVOID); 
    3639  
    3640 BOOL ChangeMenuA(HMENU,UINT,LPCSTR,UINT,UINT); 
    3641 BOOL ChangeMenuW(HMENU,UINT,LPCWSTR,UINT,UINT); 
     3625BOOL CallMsgFilterA(LPMSG, INT); 
     3626BOOL CallMsgFilterW(LPMSG, INT); 
     3627LRESULT CallNextHookEx(HHOOK, int, WPARAM, LPARAM); 
     3628LRESULT CallWindowProcA(WNDPROC, HWND, UINT, WPARAM, LPARAM); 
     3629LRESULT CallWindowProcW(WNDPROC, HWND, UINT, WPARAM, LPARAM); 
     3630WORD CascadeWindows(HWND, UINT, LPCRECT, UINT, HWND*); 
     3631BOOL ChangeClipboardChain(HWND, HWND); 
     3632 
     3633LONG ChangeDisplaySettingsA(PDEVMODEA, DWORD); 
     3634LONG ChangeDisplaySettingsW(PDEVMODEW, DWORD); 
     3635LONG ChangeDisplaySettingsExA(LPCSTR, LPDEVMODEA, HWND, DWORD, LPVOID); 
     3636LONG ChangeDisplaySettingsExW(LPCWSTR, LPDEVMODEW, HWND, DWORD, LPVOID); 
     3637 
     3638BOOL ChangeMenuA(HMENU, UINT, LPCSTR, UINT, UINT); 
     3639BOOL ChangeMenuW(HMENU, UINT, LPCWSTR, UINT, UINT); 
    36423640LPSTR CharLowerA(LPSTR); 
    36433641LPWSTR CharLowerW(LPWSTR); 
    3644 DWORD CharLowerBuffA(LPSTR,DWORD); 
    3645 DWORD CharLowerBuffW(LPWSTR,DWORD); 
     3642DWORD CharLowerBuffA(LPSTR, DWORD); 
     3643DWORD CharLowerBuffW(LPWSTR, DWORD); 
    36463644LPSTR CharNextA(LPCSTR); 
    36473645LPWSTR CharNextW(LPCWSTR); 
    3648 LPSTR CharNextExA(WORD,LPCSTR,DWORD); 
    3649 LPWSTR CharNextExW(WORD,LPCWSTR,DWORD); 
    3650 LPSTR CharPrevA(LPCSTR,LPCSTR); 
    3651 LPWSTR CharPrevW(LPCWSTR,LPCWSTR); 
    3652 LPSTR CharPrevExA(WORD,LPCSTR,LPCSTR,DWORD); 
    3653 LPWSTR CharPrevExW(WORD,LPCWSTR,LPCWSTR,DWORD); 
    3654 BOOL CharToOemA(LPCSTR,LPSTR); 
    3655 BOOL CharToOemW(LPCWSTR,LPSTR); 
    3656 BOOL CharToOemBuffA(LPCSTR,LPSTR,DWORD); 
    3657 BOOL CharToOemBuffW(LPCWSTR,LPSTR,DWORD); 
     3646LPSTR CharNextExA(WORD, LPCSTR, DWORD); 
     3647LPWSTR CharNextExW(WORD, LPCWSTR, DWORD); 
     3648LPSTR CharPrevA(LPCSTR, LPCSTR); 
     3649LPWSTR CharPrevW(LPCWSTR, LPCWSTR); 
     3650LPSTR CharPrevExA(WORD, LPCSTR, LPCSTR, DWORD); 
     3651LPWSTR CharPrevExW(WORD, LPCWSTR, LPCWSTR, DWORD); 
     3652BOOL CharToOemA(LPCSTR, LPSTR); 
     3653BOOL CharToOemW(LPCWSTR, LPSTR); 
     3654BOOL CharToOemBuffA(LPCSTR, LPSTR, DWORD); 
     3655BOOL CharToOemBuffW(LPCWSTR, LPSTR, DWORD); 
    36583656LPSTR CharUpperA(LPSTR); 
    36593657LPWSTR CharUpperW(LPWSTR); 
    3660 DWORD CharUpperBuffA(LPSTR,DWORD); 
    3661 DWORD CharUpperBuffW(LPWSTR,DWORD); 
    3662 BOOL CheckDlgButton(HWND,int,UINT); 
    3663 DWORD CheckMenuItem(HMENU,UINT,UINT); 
    3664 BOOL CheckMenuRadioItem(HMENU,UINT,UINT,UINT,UINT); 
    3665 BOOL CheckRadioButton(HWND,int,int,int); 
    3666 HWND ChildWindowFromPoint(HWND,POINT); 
    3667 HWND ChildWindowFromPointEx(HWND,POINT,UINT); 
    3668 BOOL ClientToScreen(HWND,LPPOINT); 
     3658DWORD CharUpperBuffA(LPSTR, DWORD); 
     3659DWORD CharUpperBuffW(LPWSTR, DWORD); 
     3660BOOL CheckDlgButton(HWND, int, UINT); 
     3661DWORD CheckMenuItem(HMENU, UINT, UINT); 
     3662BOOL CheckMenuRadioItem(HMENU, UINT, UINT, UINT, UINT); 
     3663BOOL CheckRadioButton(HWND, int, int, int); 
     3664HWND ChildWindowFromPoint(HWND, POINT); 
     3665HWND ChildWindowFromPointEx(HWND, POINT, UINT); 
     3666BOOL ClientToScreen(HWND, LPPOINT); 
    36693667BOOL ClipCursor(LPCRECT); 
    36703668BOOL CloseClipboard(); 
     
    36723670BOOL CloseWindow(HWND); 
    36733671BOOL CloseWindowStation(HWINSTA); 
    3674 int CopyAcceleratorTableA(HACCEL,LPACCEL,int); 
    3675 int CopyAcceleratorTableW(HACCEL,LPACCEL,int); 
     3672int CopyAcceleratorTableA(HACCEL, LPACCEL, int); 
     3673int CopyAcceleratorTableW(HACCEL, LPACCEL, int); 
    36763674 
    36773675HICON CopyIcon(HICON); 
    3678 HANDLE CopyImage(HANDLE,UINT,int,int,UINT); 
    3679 BOOL CopyRect(LPRECT,LPCRECT); 
     3676HANDLE CopyImage(HANDLE, UINT, int, int, UINT); 
     3677BOOL CopyRect(LPRECT, LPCRECT); 
    36803678int CountClipboardFormats(); 
    3681 HACCEL CreateAcceleratorTableA(LPACCEL,int); 
    3682 HACCEL CreateAcceleratorTableW(LPACCEL,int); 
    3683 BOOL CreateCaret(HWND,HBITMAP,int,int); 
    3684 HCURSOR CreateCursor(HINSTANCE,int,int,int,int,PCVOID,PCVOID); 
    3685  
    3686 HDESK CreateDesktopA(LPCSTR,LPCSTR,LPDEVMODEA,DWORD,ACCESS_MASK,LPSECURITY_ATTRIBUTES); 
    3687 HDESK CreateDesktopW(LPCWSTR,LPCWSTR,LPDEVMODEW,DWORD,ACCESS_MASK,LPSECURITY_ATTRIBUTES); 
    3688  
    3689 HWND CreateDialogParamA(HINSTANCE,LPCSTR,HWND,DLGPROC,LPARAM); 
    3690 HWND CreateDialogParamW(HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM); 
    3691 HWND CreateDialogIndirectParamA(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM); 
    3692 HWND CreateDialogIndirectParamW(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM); 
    3693  
    3694 HICON CreateIcon(HINSTANCE,int,int,BYTE,BYTE, BYTE*, BYTE*); 
    3695 HICON CreateIconFromResource(PBYTE,DWORD,BOOL,DWORD); 
    3696 HICON CreateIconFromResourceEx(PBYTE,DWORD,BOOL,DWORD,int,int,UINT); 
     3679HACCEL CreateAcceleratorTableA(LPACCEL, int); 
     3680HACCEL CreateAcceleratorTableW(LPACCEL, int); 
     3681BOOL CreateCaret(HWND, HBITMAP, int, int); 
     3682HCURSOR CreateCursor(HINSTANCE, int, int, int, int, PCVOID, PCVOID); 
     3683 
     3684HDESK CreateDesktopA(LPCSTR, LPCSTR, LPDEVMODEA, DWORD, ACCESS_MASK, LPSECURITY_ATTRIBUTES); 
     3685HDESK CreateDesktopW(LPCWSTR, LPCWSTR, LPDEVMODEW, DWORD, ACCESS_MASK, LPSECURITY_ATTRIBUTES); 
     3686 
     3687HWND CreateDialogParamA(HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM); 
     3688HWND CreateDialogParamW(HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM); 
     3689HWND CreateDialogIndirectParamA(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM); 
     3690HWND CreateDialogIndirectParamW(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM); 
     3691 
     3692HICON CreateIcon(HINSTANCE, int, int, BYTE, BYTE, BYTE*, BYTE*); 
     3693HICON CreateIconFromResource(PBYTE, DWORD, BOOL, DWORD); 
     3694HICON CreateIconFromResourceEx(PBYTE, DWORD, BOOL, DWORD, int, int, UINT); 
    36973695HICON CreateIconIndirect(PICONINFO); 
    3698 HWND CreateMDIWindowA(LPCSTR,LPCSTR,DWORD,int,int,int,int,HWND,HINSTANCE,LPARAM); 
    3699 HWND CreateMDIWindowW(LPCWSTR,LPCWSTR,DWORD,int,int,int,int,HWND,HINSTANCE,LPARAM); 
     3696HWND CreateMDIWindowA(LPCSTR, LPCSTR, DWORD, int, int, int, int, HWND, HINSTANCE, LPARAM); 
     3697HWND CreateMDIWindowW(LPCWSTR, LPCWSTR, DWORD, int, int, int, int, HWND, HINSTANCE, LPARAM); 
    37003698HMENU CreateMenu(); 
    37013699HMENU CreatePopupMenu(); 
    37023700 
    3703 HWND CreateWindowExA(DWORD,LPCSTR,LPCSTR,DWORD,int,int,int,int,HWND,HMENU,HINSTANCE,LPVOID); 
    3704 HWND CreateWindowExW(DWORD,LPCWSTR,LPCWSTR,DWORD,int,int,int,int,HWND,HMENU,HINSTANCE,LPVOID); 
    3705  
    3706 HWINSTA CreateWindowStationA(LPSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES); 
    3707 HWINSTA CreateWindowStationW(LPWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES); 
    3708 LRESULT DefDlgProcA(HWND,UINT,WPARAM,LPARAM); 
    3709 LRESULT DefDlgProcW(HWND,UINT,WPARAM,LPARAM); 
    3710 HDWP DeferWindowPos(HDWP,HWND,HWND,int,int,int,int,UINT); 
    3711 LRESULT DefFrameProcA(HWND,HWND,UINT,WPARAM,LPARAM); 
    3712 LRESULT DefFrameProcW(HWND,HWND,UINT,WPARAM,LPARAM); 
    3713  
    3714 LRESULT DefMDIChildProcA(HWND,UINT,WPARAM,LPARAM); 
    3715 LRESULT DefMDIChildProcW(HWND,UINT,WPARAM,LPARAM); 
    3716 LRESULT DefWindowProcA(HWND,UINT,WPARAM,LPARAM); 
    3717 LRESULT DefWindowProcW(HWND,UINT,WPARAM,LPARAM); 
    3718 BOOL DeleteMenu(HMENU,UINT,UINT); 
     3701HWND CreateWindowExA(DWORD, LPCSTR, LPCSTR, DWORD, int, int, int, int, HWND, HMENU, HINSTANCE, LPVOID); 
     3702HWND CreateWindowExW(DWORD, LPCWSTR, LPCWSTR, DWORD, int, int, int, int, HWND, HMENU, HINSTANCE, LPVOID); 
     3703 
     3704HWINSTA CreateWindowStationA(LPSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES); 
     3705HWINSTA CreateWindowStationW(LPWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES); 
     3706LRESULT DefDlgProcA(HWND, UINT, WPARAM, LPARAM); 
     3707LRESULT DefDlgProcW(HWND, UINT, WPARAM, LPARAM); 
     3708HDWP DeferWindowPos(HDWP, HWND, HWND, int, int, int, int, UINT); 
     3709LRESULT DefFrameProcA(HWND, HWND, UINT, WPARAM, LPARAM); 
     3710LRESULT DefFrameProcW(HWND, HWND, UINT, WPARAM, LPARAM); 
     3711 
     3712LRESULT DefMDIChildProcA(HWND, UINT, WPARAM, LPARAM); 
     3713LRESULT DefMDIChildProcW(HWND, UINT, WPARAM, LPARAM); 
     3714LRESULT DefWindowProcA(HWND, UINT, WPARAM, LPARAM); 
     3715LRESULT DefWindowProcW(HWND, UINT, WPARAM, LPARAM); 
     3716BOOL DeleteMenu(HMENU, UINT, UINT); 
    37193717BOOL DeregisterShellHookWindow(HWND); 
    37203718BOOL DestroyAcceleratorTable(HACCEL); 
     
    37253723BOOL DestroyWindow(HWND); 
    37263724 
    3727 int DialogBoxParamA(HINSTANCE,LPCSTR,HWND,DLGPROC,LPARAM); 
    3728 int DialogBoxParamW(HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM); 
    3729 int DialogBoxIndirectParamA(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM); 
    3730 int DialogBoxIndirectParamW(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM); 
     3725int DialogBoxParamA(HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM); 
     3726int DialogBoxParamW(HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM); 
     3727int DialogBoxIndirectParamA(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM); 
     3728int DialogBoxIndirectParamW(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM); 
    37313729 
    37323730} // extern (Windows) 
     
    37373735} 
    37383736 
    3739 HWND CreateDialogA(HINSTANCE h,LPCSTR n,HWND w,DLGPROC f) 
     3737HWND CreateDialogA(HINSTANCE h, LPCSTR n, HWND w, DLGPROC f) 
    37403738{ 
    37413739    return CreateDialogParamA(h, n, w, f, 0); 
    37423740} 
    37433741 
    3744 HWND CreateDialogW(HINSTANCE h,LPCWSTR n,HWND w,DLGPROC f) 
     3742HWND CreateDialogW(HINSTANCE h, LPCWSTR n, HWND w, DLGPROC f) 
    37453743{ 
    37463744    return CreateDialogParamW(h, n, w, f, 0); 
    37473745} 
    37483746 
    3749 HWND CreateDialogIndirectA(HINSTANCE h,LPCDLGTEMPLATE t,HWND w ,DLGPROC f) 
     3747HWND CreateDialogIndirectA(HINSTANCE h, LPCDLGTEMPLATE t, HWND w , DLGPROC f) 
    37503748{ 
    37513749    return CreateDialogIndirectParamA(h, t, w, f, 0); 
    37523750} 
    37533751 
    3754 HWND CreateDialogIndirectW(HINSTANCE h,LPCDLGTEMPLATE t,HWND w ,DLGPROC f) 
     3752HWND CreateDialogIndirectW(HINSTANCE h, LPCDLGTEMPLATE t, HWND w , DLGPROC f) 
    37553753{ 
    37563754    return CreateDialogIndirectParamW(h, t, w, f, 0); 
     
    37583756 
    37593757 
    3760 HWND CreateWindowA(LPCSTR a,LPCSTR b,DWORD c,int d,int e,int f,int g,HWND h,HMENU i,HINSTANCE j,LPVOID k) 
     3758HWND CreateWindowA(LPCSTR a, LPCSTR b, DWORD c, int d, int e, int f, int g, HWND h, HMENU i, HINSTANCE j, LPVOID k) 
    37613759{ 
    3762     return CreateWindowExA(0,a,b,c,d,e,f,g,h,i,j,k); 
    3763 } 
    3764  
    3765 HWND CreateWindowW(LPCWSTR a,LPCWSTR b,DWORD c,int d,int e,int f,int g,HWND h,HMENU i,HINSTANCE j,LPVOID k) 
     3760    return CreateWindowExA(0, a, b, c, d, e, f, g, h, i, j, k); 
     3761} 
     3762 
     3763HWND CreateWindowW(LPCWSTR a, LPCWSTR b, DWORD c, int d, int e, int f, int g, HWND h, HMENU i, HINSTANCE j, LPVOID k) 
    37663764{ 
    3767     return CreateWindowExW(0,a,b,c,d,e,f,g,h,i,j,k); 
    3768 } 
    3769  
    3770 int DialogBoxA(HINSTANCE i,LPCSTR t,HWND p,DLGPROC f) 
     3765    return CreateWindowExW(0, a, b, c, d, e, f, g, h, i, j, k); 
     3766} 
     3767 
     3768int DialogBoxA(HINSTANCE i, LPCSTR t, HWND p, DLGPROC f) 
    37713769{ 
    3772     return DialogBoxParamA(i,t,p,f,0); 
    3773 } 
    3774  
    3775 int DialogBoxW(HINSTANCE i,LPCWSTR t,HWND p,DLGPROC f) 
     3770    return DialogBoxParamA(i, t, p, f, 0); 
     3771} 
     3772 
     3773int DialogBoxW(HINSTANCE i, LPCWSTR t, HWND p, DLGPROC f) 
    37763774{ 
    3777     return DialogBoxParamW(i,t,p,f,0); 
    3778 } 
    3779  
    3780 int DialogBoxIndirectA(HINSTANCE i,LPCDLGTEMPLATE t,HWND p,DLGPROC f) 
     3775    return DialogBoxParamW(i, t, p, f, 0); 
     3776} 
     3777 
     3778int DialogBoxIndirectA(HINSTANCE i, LPCDLGTEMPLATE t, HWND p, DLGPROC f) 
    37813779{ 
    3782     return DialogBoxIndirectParamA(i,t,p,f,0); 
    3783 } 
    3784  
    3785 int DialogBoxIndirectW(HINSTANCE i,LPCDLGTEMPLATE t,HWND p,DLGPROC f) 
     3780    return DialogBoxIndirectParamA(i, t, p, f, 0); 
     3781} 
     3782 
     3783int DialogBoxIndirectW(HINSTANCE i, LPCDLGTEMPLATE t, HWND p, DLGPROC f) 
    37863784{ 
    3787     return DialogBoxIndirectParamW(i,t,p,f,0); 
     3785    return DialogBoxIndirectParamW(i, t, p, f, 0); 
    37883786} 
    37893787 
     
    37973795LONG DispatchMessageA( MSG*); 
    37983796LONG DispatchMessageW( MSG*); 
    3799 int DlgDirListA(HWND,LPSTR,int,int,UINT); 
    3800 int DlgDirListW(HWND,LPWSTR,int,int,UINT); 
    3801 int DlgDirListComboBoxA(HWND,LPSTR,int,int,UINT); 
    3802 int DlgDirListComboBoxW(HWND,LPWSTR,int,int,UINT); 
    3803 BOOL DlgDirSelectComboBoxExA(HWND,LPSTR,int,int); 
    3804 BOOL DlgDirSelectComboBoxExW(HWND,LPWSTR,int,int); 
    3805 BOOL DlgDirSelectExA(HWND,LPSTR,int,int); 
    3806 BOOL DlgDirSelectExW(HWND,LPWSTR,int,int); 
    3807 BOOL DragDetect(HWND,POINT); 
    3808 DWORD DragObject(HWND,HWND,UINT,DWORD,HCURSOR); 
    3809 BOOL DrawAnimatedRects(HWND,int,LPCRECT,LPCRECT); 
    3810 BOOL DrawCaption(HWND,HDC,LPCRECT,UINT); 
    3811 BOOL DrawEdge(HDC,LPRECT,UINT,UINT); 
    3812 BOOL DrawFocusRect(HDC,LPCRECT); 
    3813 BOOL DrawFrameControl(HDC,LPRECT,UINT,UINT); 
    3814 BOOL DrawIcon(HDC,int,int,HICON); 
    3815 BOOL DrawIconEx(HDC,int,int,HICON,int,int,UINT,HBRUSH,UINT); 
     3797int DlgDirListA(HWND, LPSTR, int, int, UINT); 
     3798int DlgDirListW(HWND, LPWSTR, int, int, UINT); 
     3799int DlgDirListComboBoxA(HWND, LPSTR, int, int, UINT); 
     3800int DlgDirListComboBoxW(HWND, LPWSTR, int, int, UINT); 
     3801BOOL DlgDirSelectComboBoxExA(HWND, LPSTR, int, int); 
     3802BOOL DlgDirSelectComboBoxExW(HWND, LPWSTR, int, int); 
     3803BOOL DlgDirSelectExA(HWND, LPSTR, int, int); 
     3804BOOL DlgDirSelectExW(HWND, LPWSTR, int, int); 
     3805BOOL DragDetect(HWND, POINT); 
     3806DWORD DragObject(HWND, HWND, UINT, DWORD, HCURSOR); 
     3807BOOL DrawAnimatedRects(HWND, int, LPCRECT, LPCRECT); 
     3808BOOL DrawCaption(HWND, HDC, LPCRECT, UINT); 
     3809BOOL DrawEdge(HDC, LPRECT, UINT, UINT); 
     3810BOOL DrawFocusRect(HDC, LPCRECT); 
     3811BOOL DrawFrameControl(HDC, LPRECT, UINT, UINT); 
     3812BOOL DrawIcon(HDC, int, int, HICON); 
     3813BOOL DrawIconEx(HDC, int, int, HICON, int, int, UINT, HBRUSH, UINT); 
    38163814BOOL DrawMenuBar(HWND); 
    3817 BOOL DrawStateA(HDC,HBRUSH,DRAWSTATEPROC,LPARAM,WPARAM,int,int,int,int,UINT); 
    3818 BOOL DrawStateW(HDC,HBRUSH,DRAWSTATEPROC,LPARAM,WPARAM,int,int,int,int,UINT); 
    3819 int DrawTextA(HDC,LPCSTR,int,LPRECT,UINT); 
    3820 int DrawTextW(HDC,LPCWSTR,int,LPRECT,UINT); 
    3821 int DrawTextExA(HDC,LPSTR,int,LPRECT,UINT,LPDRAWTEXTPARAMS); 
    3822 int DrawTextExW(HDC,LPWSTR,int,LPRECT,UINT,LPDRAWTEXTPARAMS); 
     3815BOOL DrawStateA(HDC, HBRUSH, DRAWSTATEPROC, LPARAM, WPARAM, int, int, int, int, UINT); 
     3816BOOL DrawStateW(HDC, HBRUSH, DRAWSTATEPROC, LPARAM, WPARAM, int, int, int, int, UINT); 
     3817int DrawTextA(HDC, LPCSTR, int, LPRECT, UINT); 
     3818int DrawTextW(HDC, LPCWSTR, int, LPRECT, UINT); 
     3819int DrawTextExA(HDC, LPSTR, int, LPRECT, UINT, LPDRAWTEXTPARAMS); 
     3820int DrawTextExW(HDC, LPWSTR, int, LPRECT, UINT, LPDRAWTEXTPARAMS); 
    38233821BOOL EmptyClipboard(); 
    3824 BOOL EnableMenuItem(HMENU,UINT,UINT); 
    3825 BOOL EnableScrollBar(HWND,UINT,UINT); 
    3826 BOOL EnableWindow(HWND,BOOL); 
     3822BOOL EnableMenuItem(HMENU, UINT, UINT); 
     3823BOOL EnableScrollBar(HWND, UINT, UINT); 
     3824BOOL EnableWindow(HWND, BOOL); 
    38273825BOOL EndDeferWindowPos(HDWP); 
    3828 BOOL EndDialog(HWND,int); 
     3826BOOL EndDialog(HWND, int); 
    38293827BOOL EndMenu(); 
    38303828BOOL EndPaint(HWND, PAINTSTRUCT*); 
    3831 BOOL EnumChildWindows(HWND,ENUMWINDOWSPROC,LPARAM); 
     3829BOOL EnumChildWindows(HWND, ENUMWINDOWSPROC, LPARAM); 
    38323830UINT EnumClipboardFormats(UINT); 
    3833 BOOL EnumDesktopsA(HWINSTA,DESKTOPENUMPROCA,LPARAM); 
    3834 BOOL EnumDesktopsW(HWINSTA,DESKTOPENUMPROCW,LPARAM); 
    3835 BOOL EnumDesktopWindows(HDESK,ENUMWINDOWSPROC,LPARAM); 
    3836 BOOL EnumDisplaySettingsA(LPCSTR,DWORD,PDEVMODEA); 
    3837 BOOL EnumDisplaySettingsW(LPCWSTR,DWORD,PDEVMODEW); 
    3838  
    3839 BOOL EnumDisplayDevicesA(LPCSTR,DWORD,PDISPLAY_DEVICEA,DWORD); 
    3840 BOOL EnumDisplayDevicesW(LPCWSTR,DWORD,PDISPLAY_DEVICEW,DWORD); 
    3841  
    3842 int EnumPropsA(HWND,PROPENUMPROCA); 
    3843 int EnumPropsW(HWND,PROPENUMPROCW); 
    3844 int EnumPropsExA(HWND,PROPENUMPROCEXA,LPARAM); 
    3845 int EnumPropsExW(HWND,PROPENUMPROCEXW,LPARAM); 
    3846  
    3847 BOOL EnumThreadWindows(DWORD,WNDENUMPROC,LPARAM); 
    3848 BOOL EnumWindows(WNDENUMPROC,LPARAM); 
    3849 BOOL EnumWindowStationsA(WINSTAENUMPROCA,LPARAM); 
    3850 BOOL EnumWindowStationsW(WINSTAENUMPROCW,LPARAM); 
    3851 BOOL EqualRect(LPCRECT,LPCRECT); 
    3852  
    3853 BOOL ExitWindowsEx(UINT,DWORD); 
    3854 HWND FindWindowA(LPCSTR,LPCSTR); 
    3855 HWND FindWindowExA(HWND,HWND,LPCSTR,LPCSTR); 
    3856 HWND FindWindowExW(HWND,HWND,LPCWSTR,LPCWSTR); 
    3857 HWND FindWindowW(LPCWSTR,LPCWSTR); 
    3858 BOOL FlashWindow(HWND,BOOL); 
    3859  
    3860 int FrameRect(HDC,LPCRECT,HBRUSH); 
    3861 BOOL FrameRgn(HDC,HRGN,HBRUSH,int,int); 
     3831BOOL EnumDesktopsA(HWINSTA, DESKTOPENUMPROCA, LPARAM); 
     3832BOOL EnumDesktopsW(HWINSTA, DESKTOPENUMPROCW, LPARAM); 
     3833BOOL EnumDesktopWindows(HDESK, ENUMWINDOWSPROC, LPARAM); 
     3834BOOL EnumDisplaySettingsA(LPCSTR, DWORD, PDEVMODEA); 
     3835BOOL EnumDisplaySettingsW(LPCWSTR, DWORD, PDEVMODEW); 
     3836 
     3837BOOL EnumDisplayDevicesA(LPCSTR, DWORD, PDISPLAY_DEVICEA, DWORD); 
     3838BOOL EnumDisplayDevicesW(LPCWSTR, DWORD, PDISPLAY_DEVICEW, DWORD); 
     3839 
     3840int EnumPropsA(HWND, PROPENUMPROCA); 
     3841int EnumPropsW(HWND, PROPENUMPROCW); 
     3842int EnumPropsExA(HWND, PROPENUMPROCEXA, LPARAM); 
     3843int EnumPropsExW(HWND, PROPENUMPROCEXW, LPARAM); 
     3844 
     3845BOOL EnumThreadWindows(DWORD, WNDENUMPROC, LPARAM); 
     3846BOOL EnumWindows(WNDENUMPROC, LPARAM); 
     3847BOOL EnumWindowStationsA(WINSTAENUMPROCA, LPARAM); 
     3848BOOL EnumWindowStationsW(WINSTAENUMPROCW, LPARAM); 
     3849BOOL EqualRect(LPCRECT, LPCRECT); 
     3850 
     3851BOOL ExitWindowsEx(UINT, DWORD); 
     3852HWND FindWindowA(LPCSTR, LPCSTR); 
     3853HWND FindWindowExA(HWND, HWND, LPCSTR, LPCSTR); 
     3854HWND FindWindowExW(HWND, HWND, LPCWSTR, LPCWSTR); 
     3855HWND FindWindowW(LPCWSTR, LPCWSTR); 
     3856BOOL FlashWindow(HWND, BOOL); 
     3857 
     3858int FrameRect(HDC, LPCRECT, HBRUSH); 
     3859BOOL FrameRgn(HDC, HRGN, HBRUSH, int, int); 
    38623860HWND GetActiveWindow(); 
    3863 HWND GetAncestor(HWND,UINT); 
     3861HWND GetAncestor(HWND, UINT); 
    38643862SHORT GetAsyncKeyState(int); 
    38653863HWND GetCapture(); 
    38663864UINT GetCaretBlinkTime(); 
    38673865BOOL GetCaretPos(LPPOINT); 
    3868 BOOL GetClassInfoA(HINSTANCE,LPCSTR,LPWNDCLASSA); 
    3869 BOOL GetClassInfoExA(HINSTANCE,LPCSTR,LPWNDCLASSEXA); 
    3870 BOOL GetClassInfoW(HINSTANCE,LPCWSTR,LPWNDCLASSW); 
    3871 BOOL GetClassInfoExW(HINSTANCE,LPCWSTR,LPWNDCLASSEXW); 
    3872 DWORD GetClassLongA(HWND,int); 
    3873 DWORD GetClassLongW(HWND,int); 
    3874 int GetClassNameA(HWND,LPSTR,int); 
    3875 int GetClassNameW(HWND,LPWSTR,int); 
    3876 WORD GetClassWord(HWND,int); 
    3877 BOOL GetClientRect(HWND,LPRECT); 
     3866BOOL GetClassInfoA(HINSTANCE, LPCSTR, LPWNDCLASSA); 
     3867BOOL GetClassInfoExA(HINSTANCE, LPCSTR, LPWNDCLASSEXA); 
     3868BOOL GetClassInfoW(HINSTANCE, LPCWSTR, LPWNDCLASSW); 
     3869BOOL GetClassInfoExW(HINSTANCE, LPCWSTR, LPWNDCLASSEXW); 
     3870DWORD GetClassLongA(HWND, int); 
     3871DWORD GetClassLongW(HWND, int); 
     3872int GetClassNameA(HWND, LPSTR, int); 
     3873int GetClassNameW(HWND, LPWSTR, int); 
     3874WORD GetClassWord(HWND, int); 
     3875BOOL GetClientRect(HWND, LPRECT); 
    38783876HANDLE GetClipboardData(UINT); 
    3879 int GetClipboardFormatNameA(UINT,LPSTR,int); 
    3880 int GetClipboardFormatNameW(UINT,LPWSTR,int); 
     3877int GetClipboardFormatNameA(UINT, LPSTR, int); 
     3878int GetClipboardFormatNameW(UINT, LPWSTR, int); 
    38813879HWND GetClipboardOwner(); 
    38823880HWND GetClipboardViewer(); 
     
    38843882BOOL GetCursorPos(LPPOINT); 
    38853883HDC GetDC(HWND); 
    3886 HDC GetDCEx(HWND,HRGN,DWORD); 
     3884HDC GetDCEx(HWND, HRGN, DWORD); 
    38873885HWND GetDesktopWindow(); 
    38883886int GetDialogBaseUnits(); 
    38893887int GetDlgCtrlID(HWND); 
    3890 HWND GetDlgItem(HWND,int); 
    3891 UINT GetDlgItemInt(HWND,int,PBOOL,BOOL); 
    3892 UINT GetDlgItemTextA(HWND,int,LPSTR,int); 
    3893 UINT GetDlgItemTextW(HWND,int,LPWSTR,int); 
     3888HWND GetDlgItem(HWND, int); 
     3889UINT GetDlgItemInt(HWND, int, PBOOL, BOOL); 
     3890UINT GetDlgItemTextA(HWND, int, LPSTR, int); 
     3891UINT GetDlgItemTextW(HWND, int, LPWSTR, int); 
    38943892UINT GetDoubleClickTime(); 
    38953893HWND GetFocus(); 
    38963894HWND GetForegroundWindow(); 
    38973895 
    3898 BOOL GetIconInfo(HICON,PICONINFO); 
     3896BOOL GetIconInfo(HICON, PICONINFO); 
    38993897BOOL GetInputState(); 
    39003898UINT GetKBCodePage(); 
    39013899HKL GetKeyboardLayout(DWORD); 
    3902 UINT GetKeyboardLayoutList(int,HKL*); 
     3900UINT GetKeyboardLayoutList(int, HKL*); 
    39033901BOOL GetKeyboardLayoutNameA(LPSTR); 
    39043902BOOL GetKeyboardLayoutNameW(LPWSTR); 
    39053903BOOL GetKeyboardState(PBYTE); 
    39063904int GetKeyboardType(int); 
    3907 int GetKeyNameTextA(LONG,LPSTR,int); 
    3908 int GetKeyNameTextW(LONG,LPWSTR,int); 
     3905int GetKeyNameTextA(LONG, LPSTR, int); 
     3906int GetKeyNameTextW(LONG, LPWSTR, int); 
    39093907SHORT GetKeyState(int); 
    39103908HWND GetLastActivePopup(HWND); 
     
    39123910LONG GetMenuCheckMarkDimensions(); 
    39133911DWORD GetMenuContextHelpId(HMENU); 
    3914 UINT GetMenuDefaultItem(HMENU,UINT,UINT); 
     3912UINT GetMenuDefaultItem(HMENU, UINT, UINT); 
    39153913int GetMenuItemCount(HMENU); 
    3916 UINT GetMenuItemID(HMENU,int); 
    3917 BOOL GetMenuItemInfoA(HMENU,UINT,BOOL,LPMENUITEMINFOA); 
    3918 BOOL GetMenuItemInfoW(HMENU,UINT,BOOL,LPMENUITEMINFOW); 
    3919 BOOL GetMenuItemRect(HWND,HMENU,UINT,LPRECT); 
    3920 UINT GetMenuState(HMENU,UINT,UINT); 
    3921 int GetMenuStringA(HMENU,UINT,LPSTR,int,UINT); 
    3922 int GetMenuStringW(HMENU,UINT,LPWSTR,int,UINT); 
    3923 BOOL GetMessageA(LPMSG,HWND,UINT,UINT); 
    3924 BOOL GetMessageW(LPMSG,HWND,UINT,UINT); 
     3914UINT GetMenuItemID(HMENU, int); 
     3915BOOL GetMenuItemInfoA(HMENU, UINT, BOOL, LPMENUITEMINFOA); 
     3916BOOL GetMenuItemInfoW(HMENU, UINT, BOOL, LPMENUITEMINFOW); 
     3917BOOL GetMenuItemRect(HWND, HMENU, UINT, LPRECT); 
     3918UINT GetMenuState(HMENU, UINT, UINT); 
     3919int GetMenuStringA(HMENU, UINT, LPSTR, int, UINT); 
     3920int GetMenuStringW(HMENU, UINT, LPWSTR, int, UINT); 
     3921BOOL GetMessageA(LPMSG, HWND, UINT, UINT); 
     3922BOOL GetMessageW(LPMSG, HWND, UINT, UINT); 
    39253923LONG GetMessageExtraInfo(); 
    39263924DWORD GetMessagePos(); 
    39273925LONG GetMessageTime(); 
    39283926 
    3929 HWND GetNextDlgGroupItem(HWND,HWND,BOOL); 
    3930 HWND GetNextDlgTabItem(HWND,HWND,BOOL); 
     3927HWND GetNextDlgGroupItem(HWND, HWND, BOOL); 
     3928HWND GetNextDlgTabItem(HWND, HWND, BOOL); 
    39313929 
    39323930HWND GetOpenClipboardWindow(); 
    39333931HWND GetParent(HWND); 
    3934 int GetPriorityClipboardFormat(UINT*,int); 
    3935 HANDLE GetPropA(HWND,LPCSTR); 
    3936 HANDLE GetPropW(HWND,LPCWSTR); 
     3932int GetPriorityClipboardFormat(UINT*, int); 
     3933HANDLE GetPropA(HWND, LPCSTR); 
     3934HANDLE GetPropW(HWND, LPCWSTR); 
    39373935 
    39383936DWORD GetQueueStatus(UINT); 
    3939 BOOL GetScrollInfo(HWND,int,LPSCROLLINFO); 
    3940 int GetScrollPos(HWND,int); 
    3941 BOOL GetScrollRange(HWND,int,LPINT,LPINT); 
    3942  
    3943 HMENU GetSubMenu(HMENU,int); 
     3937BOOL GetScrollInfo(HWND, int, LPSCROLLINFO); 
     3938int GetScrollPos(HWND, int); 
     3939BOOL GetScrollRange(HWND, int, LPINT, LPINT); 
     3940 
     3941HMENU GetSubMenu(HMENU, int); 
    39443942DWORD GetSysColor(int); 
    39453943HBRUSH GetSysColorBrush(int); 
    39463944 
    3947 HMENU GetSystemMenu(HWND,BOOL); 
     3945HMENU GetSystemMenu(HWND, BOOL); 
    39483946int GetSystemMetrics(int); 
    3949 DWORD GetTabbedTextExtentA(HDC,LPCSTR,int,int,LPINT); 
    3950 DWORD GetTabbedTextExtentW(HDC,LPCWSTR,int,int,LPINT); 
    3951 LONG GetWindowLongA(HWND,int); 
    3952 LONG GetWindowLongW(HWND,int); 
     3947DWORD GetTabbedTextExtentA(HDC, LPCSTR, int, int, LPINT); 
     3948DWORD GetTabbedTextExtentW(HDC, LPCWSTR, int, int, LPINT); 
     3949LONG GetWindowLongA(HWND, int); 
     3950LONG GetWindowLongW(HWND, int); 
    39533951 
    39543952HDESK GetThreadDesktop(DWORD); 
    39553953HWND GetTopWindow(HWND); 
    3956 BOOL GetUpdateRect(HWND,LPRECT,BOOL); 
    3957 int GetUpdateRgn(HWND,HRGN,BOOL); 
    3958 BOOL GetUserObjectInformationA(HANDLE,int,PVOID,DWORD,PDWORD); 
    3959 BOOL GetUserObjectInformationW(HANDLE,int,PVOID,DWORD,PDWORD); 
    3960 BOOL GetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 
    3961 HWND GetWindow(HWND,UINT); 
     3954BOOL GetUpdateRect(HWND, LPRECT, BOOL); 
     3955int GetUpdateRgn(HWND, HRGN, BOOL); 
     3956BOOL GetUserObjectInformationA(HANDLE, int, PVOID, DWORD, PDWORD); 
     3957BOOL GetUserObjectInformationW(HANDLE, int, PVOID, DWORD, PDWORD); 
     3958BOOL GetUserObjectSecurity(HANDLE, PSECURITY_INFORMATION, PSECURITY_DESCRIPTOR, DWORD, PDWORD); 
     3959HWND GetWindow(HWND, UINT); 
    39623960DWORD GetWindowContextHelpId(HWND); 
    39633961HDC GetWindowDC(HWND); 
    3964 BOOL GetWindowPlacement(HWND,WINDOWPLACEMENT*); 
    3965 BOOL GetWindowRect(HWND,LPRECT); 
    3966 int GetWindowRgn(HWND,HRGN); 
    3967 int GetWindowTextA(HWND,LPSTR,int); 
     3962BOOL GetWindowPlacement(HWND, WINDOWPLACEMENT*); 
     3963BOOL GetWindowRect(HWND, LPRECT); 
     3964int GetWindowRgn(HWND, HRGN); 
     3965int GetWindowTextA(HWND, LPSTR, int); 
    39683966int GetWindowTextLengthA(HWND); 
    39693967int GetWindowTextLengthW(HWND); 
    3970 int GetWindowTextW(HWND,LPWSTR,int); 
    3971 WORD GetWindowWord(HWND,int); 
    3972 BOOL GetAltTabInfoA(HWND,int,PALTTABINFO,LPSTR,UINT); 
    3973 BOOL GetAltTabInfoW(HWND,int,PALTTABINFO,LPWSTR,UINT); 
    3974 BOOL GetComboBoxInfo(HWND,PCOMBOBOXINFO); 
     3968int GetWindowTextW(HWND, LPWSTR, int); 
     3969WORD GetWindowWord(HWND, int); 
     3970BOOL GetAltTabInfoA(HWND, int, PALTTABINFO, LPSTR, UINT); 
     3971BOOL GetAltTabInfoW(HWND, int, PALTTABINFO, LPWSTR, UINT); 
     3972BOOL GetComboBoxInfo(HWND, PCOMBOBOXINFO); 
    39753973BOOL GetCursorInfo(PCURSORINFO); 
    39763974BOOL GetLastInputInfo(PLASTINPUTINFO); 
    39773975DWORD GetListBoxInfo(HWND); 
    3978 BOOL GetMenuBarInfo(HWND,LONG,LONG,PMENUBARINFO); 
    3979 BOOL GetMenuInfo(HMENU,LPMENUINFO); 
    3980 BOOL GetScrollBarInfo(HWND,LONG,PSCROLLBARINFO); 
    3981 BOOL GetTitleBarInfo(HWND,PTITLEBARINFO); 
    3982 BOOL GetWindowInfo(HWND,PWINDOWINFO); 
    3983 UINT GetWindowModuleFileNameA(HWND,LPSTR,UINT); 
    3984 UINT GetWindowModuleFileNameW(HWND,LPWSTR,UINT); 
    3985 BOOL GrayStringA(HDC,HBRUSH,GRAYSTRINGPROC,LPARAM,int,int,int,int,int); 
    3986 BOOL GrayStringW(HDC,HBRUSH,GRAYSTRINGPROC,LPARAM,int,int,int,int,int); 
     3976BOOL GetMenuBarInfo(HWND, LONG, LONG, PMENUBARINFO); 
     3977BOOL GetMenuInfo(HMENU, LPMENUINFO); 
     3978BOOL GetScrollBarInfo(HWND, LONG, PSCROLLBARINFO); 
     3979BOOL GetTitleBarInfo(HWND, PTITLEBARINFO); 
     3980BOOL GetWindowInfo(HWND, PWINDOWINFO); 
     3981UINT GetWindowModuleFileNameA(HWND, LPSTR, UINT); 
     3982UINT GetWindowModuleFileNameW(HWND, LPWSTR, UINT); 
     3983BOOL GrayStringA(HDC, HBRUSH, GRAYSTRINGPROC, LPARAM, int, int, int, int, int); 
     3984BOOL GrayStringW(HDC, HBRUSH, GRAYSTRINGPROC, LPARAM, int, int, int, int, int); 
    39873985BOOL HideCaret(HWND); 
    3988 BOOL HiliteMenuItem(HWND,HMENU,UINT,UINT); 
    3989 BOOL InflateRect(LPRECT,int,int); 
     3986BOOL HiliteMenuItem(HWND, HMENU, UINT, UINT); 
     3987BOOL InflateRect(LPRECT, int, int); 
    39903988BOOL InSendMessage(); 
    3991 BOOL InsertMenuA(HMENU,UINT,UINT,UINT,LPCSTR); 
    3992 BOOL InsertMenuW(HMENU,UINT,UINT,UINT,LPCWSTR); 
    3993 BOOL InsertMenuItemA(HMENU,UINT,BOOL,LPCMENUITEMINFOA); 
    3994 BOOL InsertMenuItemW(HMENU,UINT,BOOL,LPCMENUITEMINFOW); 
    3995 INT InternalGetWindowText(HWND,LPWSTR,INT); 
    3996 BOOL IntersectRect(LPRECT,LPCRECT,LPCRECT); 
    3997 BOOL InvalidateRect(HWND,LPCRECT,BOOL); 
    3998 BOOL InvalidateRgn(HWND,HRGN,BOOL); 
    3999 BOOL InvertRect(HDC,LPCRECT); 
     3989BOOL InsertMenuA(HMENU, UINT, UINT, UINT, LPCSTR); 
     3990BOOL InsertMenuW(HMENU, UINT, UINT, UINT, LPCWSTR); 
     3991BOOL InsertMenuItemA(HMENU, UINT, BOOL, LPCMENUITEMINFOA); 
     3992BOOL InsertMenuItemW(HMENU, UINT, BOOL, LPCMENUITEMINFOW); 
     3993INT InternalGetWindowText(HWND, LPWSTR, INT); 
     3994BOOL IntersectRect(LPRECT, LPCRECT, LPCRECT); 
     3995BOOL InvalidateRect(HWND, LPCRECT, BOOL); 
     3996BOOL InvalidateRgn(HWND, HRGN, BOOL); 
     3997BOOL InvertRect(HDC, LPCRECT); 
    40003998BOOL IsCharAlphaA(CHAR ch); 
    40013999BOOL IsCharAlphaNumericA(CHAR); 
     
    40064004BOOL IsCharUpperA(CHAR); 
    40074005BOOL IsCharUpperW(WCHAR); 
    4008 BOOL IsChild(HWND,HWND); 
     4006BOOL IsChild(HWND, HWND); 
    40094007BOOL IsClipboardFormatAvailable(UINT); 
    4010 BOOL IsDialogMessageA(HWND,LPMSG); 
    4011 BOOL IsDialogMessageW(HWND,LPMSG); 
    4012 UINT IsDlgButtonChecked(HWND,int); 
     4008BOOL IsDialogMessageA(HWND, LPMSG); 
     4009BOOL IsDialogMessageW(HWND, LPMSG); 
     4010UINT IsDlgButtonChecked(HWND, int); 
    40134011BOOL IsIconic(HWND); 
    40144012BOOL IsMenu(HMENU); 
     
    40194017BOOL IsWindowVisible(HWND); 
    40204018BOOL IsZoomed(HWND); 
    4021 void keybd_event(BYTE,BYTE,DWORD,DWORD); 
    4022 BOOL KillTimer(HWND,UINT); 
    4023 HACCEL LoadAcceleratorsA(HINSTANCE,LPCSTR); 
    4024 HACCEL LoadAcceleratorsW(HINSTANCE,LPCWSTR); 
    4025 HBITMAP LoadBitmapA(HINSTANCE,LPCSTR); 
    4026 HBITMAP LoadBitmapW(HINSTANCE,LPCWSTR); 
    4027 HCURSOR LoadCursorA(HINSTANCE,LPCSTR); 
     4019void keybd_event(BYTE, BYTE, DWORD, DWORD); 
     4020BOOL KillTimer(HWND, UINT); 
     4021HACCEL LoadAcceleratorsA(HINSTANCE, LPCSTR); 
     4022HACCEL LoadAcceleratorsW(HINSTANCE, LPCWSTR); 
     4023HBITMAP LoadBitmapA(HINSTANCE, LPCSTR); 
     4024HBITMAP LoadBitmapW(HINSTANCE, LPCWSTR); 
     4025HCURSOR LoadCursorA(HINSTANCE, LPCSTR); 
    40284026HCURSOR LoadCursorFromFileA(LPCSTR); 
    40294027HCURSOR LoadCursorFromFileW(LPCWSTR); 
    4030 HCURSOR LoadCursorW(HINSTANCE,LPCWSTR); 
    4031 HICON LoadIconA(HINSTANCE,LPCSTR); 
    4032 HICON LoadIconW(HINSTANCE,LPCWSTR); 
    4033 HANDLE LoadImageA(HINSTANCE,LPCSTR,UINT,int,int,UINT); 
    4034 HANDLE LoadImageW(HINSTANCE,LPCWSTR,UINT,int,int,UINT); 
    4035 HKL LoadKeyboardLayoutA(LPCSTR,UINT); 
    4036 HKL LoadKeyboardLayoutW(LPCWSTR,UINT); 
    4037 HMENU LoadMenuA(HINSTANCE,LPCSTR); 
     4028HCURSOR LoadCursorW(HINSTANCE, LPCWSTR); 
     4029HICON LoadIconA(HINSTANCE, LPCSTR); 
     4030HICON LoadIconW(HINSTANCE, LPCWSTR); 
     4031HANDLE LoadImageA(HINSTANCE, LPCSTR, UINT, int, int, UINT); 
     4032HANDLE LoadImageW(HINSTANCE, LPCWSTR, UINT, int, int, UINT); 
     4033HKL LoadKeyboardLayoutA(LPCSTR, UINT); 
     4034HKL LoadKeyboardLayoutW(LPCWSTR, UINT); 
     4035HMENU LoadMenuA(HINSTANCE, LPCSTR); 
    40384036HMENU LoadMenuIndirectA( MENUTEMPLATE*); 
    40394037HMENU LoadMenuIndirectW( MENUTEMPLATE*); 
    4040 HMENU LoadMenuW(HINSTANCE,LPCWSTR); 
    4041 int LoadStringA(HINSTANCE,UINT,LPSTR,int); 
    4042 int LoadStringW(HINSTANCE,UINT,LPWSTR,int); 
     4038HMENU LoadMenuW(HINSTANCE, LPCWSTR); 
     4039int LoadStringA(HINSTANCE, UINT, LPSTR, int); 
     4040int LoadStringW(HINSTANCE, UINT, LPWSTR, int); 
    40434041BOOL LockWindowUpdate(HWND); 
    4044 int LookupIconIdFromDirectory(PBYTE,BOOL); 
    4045 int LookupIconIdFromDirectoryEx(PBYTE,BOOL,int,int,UINT); 
    4046 BOOL MapDialogRect(HWND,LPRECT); 
    4047 UINT MapVirtualKeyA(UINT,UINT); 
    4048 UINT MapVirtualKeyExA(UINT,UINT,HKL); 
    4049 UINT MapVirtualKeyExW(UINT,UINT,HKL); 
    4050 UINT MapVirtualKeyW(UINT,UINT); 
    4051 int MapWindowPoints(HWND,HWND,LPPOINT,UINT); 
    4052 int MenuItemFromPoint(HWND,HMENU,POINT); 
     4042int LookupIconIdFromDirectory(PBYTE, BOOL); 
     4043int LookupIconIdFromDirectoryEx(PBYTE, BOOL, int, int, UINT); 
     4044BOOL MapDialogRect(HWND, LPRECT); 
     4045UINT MapVirtualKeyA(UINT, UINT); 
     4046UINT MapVirtualKeyExA(UINT, UINT, HKL); 
     4047UINT MapVirtualKeyExW(UINT, UINT, HKL); 
     4048UINT MapVirtualKeyW(UINT, UINT); 
     4049int MapWindowPoints(HWND, HWND, LPPOINT, UINT); 
     4050int MenuItemFromPoint(HWND, HMENU, POINT); 
    40534051BOOL MessageBeep(UINT); 
    4054 int MessageBoxA(HWND,LPCSTR,LPCSTR,UINT); 
    4055 int MessageBoxW(HWND,LPCWSTR,LPCWSTR,UINT); 
    4056 int MessageBoxExA(HWND,LPCSTR,LPCSTR,UINT,WORD); 
    4057 int MessageBoxExW(HWND,LPCWSTR,LPCWSTR,UINT,WORD); 
     4052int MessageBoxA(HWND, LPCSTR, LPCSTR, UINT); 
     4053int MessageBoxW(HWND, LPCWSTR, LPCWSTR, UINT); 
     4054int MessageBoxExA(HWND, LPCSTR, LPCSTR, UINT, WORD); 
     4055int MessageBoxExW(HWND, LPCWSTR, LPCWSTR, UINT, WORD); 
    40584056int MessageBoxIndirectA(MSGBOXPARAMSA*); 
    40594057int MessageBoxIndirectW(MSGBOXPARAMSW*); 
    4060 BOOL ModifyMenuA(HMENU,UINT,UINT,UINT,LPCSTR); 
    4061 BOOL ModifyMenuW(HMENU,UINT,UINT,UINT,LPCWSTR); 
    4062 void mouse_event(DWORD,DWORD,DWORD,DWORD,ULONG_PTR); 
    4063 BOOL MoveWindow(HWND,int,int,int,int,BOOL); 
    4064 DWORD MsgWaitForMultipleObjects(DWORD, HANDLE*,BOOL,DWORD,DWORD); 
    4065 DWORD MsgWaitForMultipleObjectsEx(DWORD, HANDLE*,DWORD,DWORD,DWORD); 
     4058BOOL ModifyMenuA(HMENU, UINT, UINT, UINT, LPCSTR); 
     4059BOOL ModifyMenuW(HMENU, UINT, UINT, UINT, LPCWSTR); 
     4060void mouse_event(DWORD, DWORD, DWORD, DWORD, ULONG_PTR); 
     4061BOOL MoveWindow(HWND, int, int, int, int, BOOL); 
     4062DWORD MsgWaitForMultipleObjects(DWORD, HANDLE*, BOOL, DWORD, DWORD); 
     4063DWORD MsgWaitForMultipleObjectsEx(DWORD, HANDLE*, DWORD, DWORD, DWORD); 
    40664064DWORD OemKeyScan(WORD); 
    4067 BOOL OemToCharA(LPCSTR,LPSTR); 
    4068 BOOL OemToCharBuffA(LPCSTR,LPSTR,DWORD); 
    4069 BOOL OemToCharBuffW(LPCSTR,LPWSTR,DWORD); 
    4070 BOOL OemToCharW(LPCSTR,LPWSTR); 
    4071 BOOL OffsetRect(LPRECT,int,int); 
     4065BOOL OemToCharA(LPCSTR, LPSTR); 
     4066BOOL OemToCharBuffA(LPCSTR, LPSTR, DWORD); 
     4067BOOL OemToCharBuffW(LPCSTR, LPWSTR, DWORD); 
     4068BOOL OemToCharW(LPCSTR, LPWSTR); 
     4069BOOL OffsetRect(LPRECT, int, int); 
    40724070BOOL OpenClipboard(HWND); 
    4073 HDESK OpenDesktopA(LPSTR,DWORD,BOOL,DWORD); 
    4074 HDESK OpenDesktopW(LPWSTR,DWORD,BOOL,DWORD); 
     4071HDESK OpenDesktopA(LPSTR, DWORD, BOOL, DWORD); 
     4072HDESK OpenDesktopW(LPWSTR, DWORD, BOOL, DWORD); 
    40754073BOOL OpenIcon(HWND); 
    4076 HDESK OpenInputDesktop(DWORD,BOOL,DWORD); 
    4077 HWINSTA OpenWindowStationA(LPSTR,BOOL,DWORD); 
    4078 HWINSTA OpenWindowStationW(LPWSTR,BOOL,DWORD); 
     4074HDESK OpenInputDesktop(DWORD, BOOL, DWORD); 
     4075HWINSTA OpenWindowStationA(LPSTR, BOOL, DWORD); 
     4076HWINSTA OpenWindowStationW(LPWSTR, BOOL, DWORD); 
    40794077BOOL PaintDesktop(HDC); 
    4080 BOOL PeekMessageA(LPMSG,HWND,UINT,UINT,UINT); 
    4081 BOOL PeekMessageW(LPMSG,HWND,UINT,UINT,UINT); 
    4082 BOOL PostMessageA(HWND,UINT,WPARAM,LPARAM); 
    4083 BOOL PostMessageW(HWND,UINT,WPARAM,LPARAM); 
     4078BOOL PeekMessageA(LPMSG, HWND, UINT, UINT, UINT); 
     4079BOOL PeekMessageW(LPMSG, HWND, UINT, UINT, UINT); 
     4080BOOL PostMessageA(HWND, UINT, WPARAM, LPARAM); 
     4081BOOL PostMessageW(HWND, UINT, WPARAM, LPARAM); 
    40844082void PostQuitMessage(int); 
    4085 BOOL PostThreadMessageA(DWORD,UINT,WPARAM,LPARAM); 
    4086 BOOL PostThreadMessageW(DWORD,UINT,WPARAM,LPARAM); 
    4087 BOOL PtInRect(LPCRECT,POINT); 
    4088 HWND RealChildWindowFromPoint(HWND,POINT); 
    4089 UINT RealGetWindowClassA(HWND,LPSTR,UINT); 
    4090 UINT RealGetWindowClassW(HWND,LPWSTR,UINT); 
    4091 BOOL RedrawWindow(HWND,LPCRECT,HRGN,UINT); 
     4083BOOL PostThreadMessageA(DWORD, UINT, WPARAM, LPARAM); 
     4084BOOL PostThreadMessageW(DWORD, UINT, WPARAM, LPARAM); 
     4085BOOL PtInRect(LPCRECT, POINT); 
     4086HWND RealChildWindowFromPoint(HWND, POINT); 
     4087UINT RealGetWindowClassA(HWND, LPSTR, UINT); 
     4088UINT RealGetWindowClassW(HWND, LPWSTR, UINT); 
     4089BOOL RedrawWindow(HWND, LPCRECT, HRGN, UINT); 
    40924090ATOM RegisterClassA(WNDCLASSA*); 
    40934091ATOM RegisterClassW(WNDCLASSW*); 
     
    40964094UINT RegisterClipboardFormatA(LPCSTR); 
    40974095UINT RegisterClipboardFormatW(LPCWSTR); 
    4098 BOOL RegisterHotKey(HWND,int,UINT,UINT); 
     4096BOOL RegisterHotKey(HWND, int, UINT, UINT); 
    40994097UINT RegisterWindowMessageA(LPCSTR); 
    41004098UINT RegisterWindowMessageW(LPCWSTR); 
    41014099BOOL ReleaseCapture(); 
    4102 int ReleaseDC(HWND,HDC); 
    4103 BOOL RemoveMenu(HMENU,UINT,UINT); 
    4104 HANDLE RemovePropA(HWND,LPCSTR); 
    4105 HANDLE RemovePropW(HWND,LPCWSTR); 
     4100int ReleaseDC(HWND, HDC); 
     4101BOOL RemoveMenu(HMENU, UINT, UINT); 
     4102HANDLE RemovePropA(HWND, LPCSTR); 
     4103HANDLE RemovePropW(HWND, LPCWSTR); 
    41064104BOOL ReplyMessage(LRESULT); 
    4107 BOOL ScreenToClient(HWND,LPPOINT); 
    4108 BOOL ScrollDC(HDC,int,int,LPCRECT,LPCRECT,HRGN,LPRECT); 
    4109 BOOL ScrollWindow(HWND,int,int,LPCRECT,LPCRECT); 
    4110 int ScrollWindowEx(HWND,int,int,LPCRECT,LPCRECT,HRGN,LPRECT,UINT); 
    4111 LONG SendDlgItemMessageA(HWND,int,UINT,WPARAM,LPARAM); 
    4112 LONG SendDlgItemMessageW(HWND,int,UINT,WPARAM,LPARAM); 
    4113 LRESULT SendMessageA(HWND,UINT,WPARAM,LPARAM); 
    4114 BOOL SendMessageCallbackA(HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,DWORD); 
    4115 BOOL SendMessageCallbackW(HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,DWORD); 
    4116 LRESULT SendMessageTimeoutA(HWND,UINT,WPARAM,LPARAM,UINT,UINT,PDWORD); 
    4117 LRESULT SendMessageTimeoutW(HWND,UINT,WPARAM,LPARAM,UINT,UINT,PDWORD); 
    4118 LRESULT SendMessageW(HWND,UINT,WPARAM,LPARAM); 
    4119 BOOL SendNotifyMessageA(HWND,UINT,WPARAM,LPARAM); 
    4120 BOOL SendNotifyMessageW(HWND,UINT,WPARAM,LPARAM); 
     4105BOOL ScreenToClient(HWND, LPPOINT); 
     4106BOOL ScrollDC(HDC, int, int, LPCRECT, LPCRECT, HRGN, LPRECT); 
     4107BOOL ScrollWindow(HWND, int, int, LPCRECT, LPCRECT); 
     4108int ScrollWindowEx(HWND, int, int, LPCRECT, LPCRECT, HRGN, LPRECT, UINT); 
     4109LONG SendDlgItemMessageA(HWND, int, UINT, WPARAM, LPARAM); 
     4110LONG SendDlgItemMessageW(HWND, int, UINT, WPARAM, LPARAM); 
     4111LRESULT SendMessageA(HWND, UINT, WPARAM, LPARAM); 
     4112BOOL SendMessageCallbackA(HWND, UINT, WPARAM, LPARAM, SENDASYNCPROC, DWORD); 
     4113BOOL SendMessageCallbackW(HWND, UINT, WPARAM, LPARAM, SENDASYNCPROC, DWORD); 
     4114LRESULT SendMessageTimeoutA(HWND, UINT, WPARAM, LPARAM, UINT, UINT, PDWORD); 
     4115LRESULT SendMessageTimeoutW(HWND, UINT, WPARAM, LPARAM, UINT, UINT, PDWORD); 
     4116LRESULT SendMessageW(HWND, UINT, WPARAM, LPARAM); 
     4117BOOL SendNotifyMessageA(HWND, UINT, WPARAM, LPARAM); 
     4118BOOL SendNotifyMessageW(HWND, UINT, WPARAM, LPARAM); 
    41214119HWND SetActiveWindow(HWND); 
    41224120HWND SetCapture(HWND hWnd); 
    41234121BOOL SetCaretBlinkTime(UINT); 
    4124 BOOL SetCaretPos(int,int); 
    4125 DWORD SetClassLongA(HWND,int,LONG); 
    4126 DWORD SetClassLongW(HWND,int,LONG); 
    4127 WORD SetClassWord(HWND,int,WORD); 
    4128 HANDLE SetClipboardData(UINT,HANDLE); 
     4122BOOL SetCaretPos(int, int); 
     4123DWORD SetClassLongA(HWND, int, LONG); 
     4124DWORD SetClassLongW(HWND, int, LONG); 
     4125WORD SetClassWord(HWND, int, WORD); 
     4126HANDLE SetClipboardData(UINT, HANDLE); 
    41294127HWND SetClipboardViewer(HWND); 
    41304128HCURSOR SetCursor(HCURSOR); 
    4131 BOOL SetCursorPos(int,int); 
     4129BOOL SetCursorPos(int, int); 
    41324130void SetDebugErrorLevel(DWORD); 
    4133 BOOL SetDlgItemInt(HWND,int,UINT,BOOL); 
    4134 BOOL SetDlgItemTextA(HWND,int,LPCSTR); 
    4135 BOOL SetDlgItemTextW(HWND,int,LPCWSTR); 
     4131BOOL SetDlgItemInt(HWND, int, UINT, BOOL); 
     4132BOOL SetDlgItemTextA(HWND, int, LPCSTR); 
     4133BOOL SetDlgItemTextW(HWND, int, LPCWSTR); 
    41364134BOOL SetDoubleClickTime(UINT); 
    41374135HWND SetFocus(HWND); 
    41384136BOOL SetForegroundWindow(HWND); 
    41394137BOOL SetKeyboardState(PBYTE); 
    4140 BOOL SetMenu(HWND,HMENU); 
    4141 BOOL SetMenuContextHelpId(HMENU,DWORD); 
    4142 BOOL SetMenuDefaultItem(HMENU,UINT,UINT); 
    4143 BOOL SetMenuInfo(HMENU,LPCMENUINFO); 
    4144 BOOL SetMenuItemBitmaps(HMENU,UINT,UINT,HBITMAP,HBITMAP); 
    4145 BOOL SetMenuItemInfoA(HMENU,UINT,BOOL,LPCMENUITEMINFOA); 
    4146 BOOL SetMenuItemInfoW( HMENU,UINT,BOOL,LPCMENUITEMINFOW); 
     4138BOOL SetMenu(HWND, HMENU); 
     4139BOOL SetMenuContextHelpId(HMENU, DWORD); 
     4140BOOL SetMenuDefaultItem(HMENU, UINT, UINT); 
     4141BOOL SetMenuInfo(HMENU, LPCMENUINFO); 
     4142BOOL SetMenuItemBitmaps(HMENU, UINT, UINT, HBITMAP, HBITMAP); 
     4143BOOL SetMenuItemInfoA(HMENU, UINT, BOOL, LPCMENUITEMINFOA); 
     4144BOOL SetMenuItemInfoW( HMENU, UINT, BOOL, LPCMENUITEMINFOW); 
    41474145LPARAM SetMessageExtraInfo(LPARAM); 
    41484146BOOL SetMessageQueue(int); 
    4149 HWND SetParent(HWND,HWND); 
     4147HWND SetParent(HWND, HWND); 
    41504148BOOL SetProcessWindowStation(HWINSTA); 
    4151 BOOL SetPropA(HWND,LPCSTR,HANDLE); 
    4152 BOOL SetPropW(HWND,LPCWSTR,HANDLE); 
    4153 BOOL SetRect(LPRECT,int,int,int,int); 
     4149BOOL SetPropA(HWND, LPCSTR, HANDLE); 
     4150BOOL SetPropW(HWND, LPCWSTR, HANDLE); 
     4151BOOL SetRect(LPRECT, int, int, int, int); 
    41544152BOOL SetRectEmpty(LPRECT); 
    4155 int SetScrollInfo(HWND,int,LPCSCROLLINFO,BOOL); 
    4156 int SetScrollPos(HWND,int,int,BOOL); 
    4157 BOOL SetScrollRange(HWND,int,int,int,BOOL); 
    4158 BOOL SetSysColors(int, INT *, COLORREF *); 
    4159 BOOL SetSystemCursor(HCURSOR,DWORD); 
     4153int SetScrollInfo(HWND, int, LPCSCROLLINFO, BOOL); 
     4154int SetScrollPos(HWND, int, int, BOOL); 
     4155BOOL SetScrollRange(HWND, int, int, int, BOOL); 
     4156BOOL SetSysColors(int, INT* , COLORREF* ); 
     4157BOOL SetSystemCursor(HCURSOR, DWORD); 
    41604158BOOL SetThreadDesktop(HDESK); 
    4161 UINT SetTimer(HWND,UINT,UINT,TIMERPROC); 
    4162 BOOL SetUserObjectInformationA(HANDLE,int,PVOID,DWORD); 
    4163 BOOL SetUserObjectInformationW(HANDLE,int,PVOID,DWORD); 
    4164 BOOL SetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION,PSECURITY_DESCRIPTOR); 
    4165 BOOL SetWindowContextHelpId(HWND,DWORD); 
    4166 LONG SetWindowLongA(HWND,int,LONG); 
    4167 LONG SetWindowLongW(HWND,int,LONG); 
     4159UINT SetTimer(HWND, UINT, UINT, TIMERPROC); 
     4160BOOL SetUserObjectInformationA(HANDLE, int, PVOID, DWORD); 
     4161BOOL SetUserObjectInformationW(HANDLE, int, PVOID, DWORD); 
     4162BOOL SetUserObjectSecurity(HANDLE, PSECURITY_INFORMATION, PSECURITY_DESCRIPTOR); 
     4163BOOL SetWindowContextHelpId(HWND, DWORD); 
     4164LONG SetWindowLongA(HWND, int, LONG); 
     4165LONG SetWindowLongW(HWND, int, LONG); 
    41684166BOOL SetWindowPlacement(HWND hWnd, WINDOWPLACEMENT*); 
    4169 BOOL SetWindowPos(HWND,HWND,int,int,int,int,UINT); 
    4170 int SetWindowRgn(HWND,HRGN,BOOL); 
    4171 HHOOK SetWindowsHookA(int,HOOKPROC); 
    4172 HHOOK SetWindowsHookW(int,HOOKPROC); 
    4173 HHOOK SetWindowsHookExA(int,HOOKPROC,HINSTANCE,DWORD); 
    4174 HHOOK SetWindowsHookExW(int,HOOKPROC,HINSTANCE,DWORD); 
    4175 BOOL SetWindowTextA(HWND,LPCSTR); 
    4176 BOOL SetWindowTextW(HWND,LPCWSTR); 
    4177 WORD SetWindowWord(HWND,int,WORD); 
     4167BOOL SetWindowPos(HWND, HWND, int, int, int, int, UINT); 
     4168int SetWindowRgn(HWND, HRGN, BOOL); 
     4169HHOOK SetWindowsHookA(int, HOOKPROC); 
     4170HHOOK SetWindowsHookW(int, HOOKPROC); 
     4171HHOOK SetWindowsHookExA(int, HOOKPROC, HINSTANCE, DWORD); 
     4172HHOOK SetWindowsHookExW(int, HOOKPROC, HINSTANCE, DWORD); 
     4173BOOL SetWindowTextA(HWND, LPCSTR); 
     4174BOOL SetWindowTextW(HWND, LPCWSTR); 
     4175WORD SetWindowWord(HWND, int, WORD); 
    41784176BOOL ShowCaret(HWND); 
    41794177int ShowCursor(BOOL); 
    4180 BOOL ShowOwnedPopups(HWND,BOOL); 
    4181 BOOL ShowScrollBar(HWND,int,BOOL); 
    4182 BOOL ShowWindow(HWND,int); 
    4183 BOOL ShowWindowAsync(HWND,int); 
    4184 BOOL SubtractRect(LPRECT,LPCRECT,LPCRECT); 
     4178BOOL ShowOwnedPopups(HWND, BOOL); 
     4179BOOL ShowScrollBar(HWND, int, BOOL); 
     4180BOOL ShowWindow(HWND, int); 
     4181BOOL ShowWindowAsync(HWND, int); 
     4182BOOL SubtractRect(LPRECT, LPCRECT, LPCRECT); 
    41854183BOOL SwapMouseButton(BOOL); 
    41864184BOOL SwitchDesktop(HDESK); 
    4187 BOOL SystemParametersInfoA(UINT,UINT,PVOID,UINT); 
    4188 BOOL SystemParametersInfoW(UINT,UINT,PVOID,UINT); 
    4189 LONG TabbedTextOutA(HDC,int,int,LPCSTR,int,int,LPINT,int); 
    4190 LONG TabbedTextOutW(HDC,int,int,LPCWSTR,int,int,LPINT,int); 
    4191 WORD TileWindows(HWND,UINT,LPCRECT,UINT, HWND *); 
    4192 int ToAscii(UINT,UINT,PBYTE,LPWORD,UINT); 
    4193 int ToAsciiEx(UINT,UINT,PBYTE,LPWORD,UINT,HKL); 
    4194 int ToUnicode(UINT,UINT,PBYTE,LPWSTR,int,UINT); 
    4195 int ToUnicodeEx(UINT,UINT,PBYTE,LPWSTR,int,UINT,HKL); 
     4185BOOL SystemParametersInfoA(UINT, UINT, PVOID, UINT); 
     4186BOOL SystemParametersInfoW(UINT, UINT, PVOID, UINT); 
     4187LONG TabbedTextOutA(HDC, int, int, LPCSTR, int, int, LPINT, int); 
     4188LONG TabbedTextOutW(HDC, int, int, LPCWSTR, int, int, LPINT, int); 
     4189WORD TileWindows(HWND, UINT, LPCRECT, UINT, HWND* ); 
     4190int ToAscii(UINT, UINT, PBYTE, LPWORD, UINT); 
     4191int ToAsciiEx(UINT, UINT, PBYTE, LPWORD, UINT, HKL); 
     4192int ToUnicode(UINT, UINT, PBYTE, LPWSTR, int, UINT); 
     4193int ToUnicodeEx(UINT, UINT, PBYTE, LPWSTR, int, UINT, HKL); 
    41964194BOOL TrackMouseEvent(LPTRACKMOUSEEVENT); 
    4197 BOOL TrackPopupMenu(HMENU,UINT,int,int,int,HWND,LPCRECT); 
    4198 BOOL TrackPopupMenuEx(HMENU,UINT,int,int,HWND,LPTPMPARAMS); 
    4199 int TranslateAcceleratorA(HWND,HACCEL,LPMSG); 
    4200 int TranslateAcceleratorW(HWND,HACCEL,LPMSG); 
    4201 BOOL TranslateMDISysAccel(HWND,LPMSG); 
     4195BOOL TrackPopupMenu(HMENU, UINT, int, int, int, HWND, LPCRECT); 
     4196BOOL TrackPopupMenuEx(HMENU, UINT, int, int, HWND, LPTPMPARAMS); 
     4197int TranslateAcceleratorA(HWND, HACCEL, LPMSG); 
     4198int TranslateAcceleratorW(HWND, HACCEL, LPMSG); 
     4199BOOL TranslateMDISysAccel(HWND, LPMSG); 
    42024200BOOL TranslateMessage( MSG*); 
    4203 BOOL UnhookWindowsHook(int,HOOKPROC); 
     4201BOOL UnhookWindowsHook(int, HOOKPROC); 
    42044202BOOL UnhookWindowsHookEx(HHOOK); 
    4205 BOOL UnionRect(LPRECT,LPCRECT,LPCRECT); 
     4203BOOL UnionRect(LPRECT, LPCRECT, LPCRECT); 
    42064204BOOL UnloadKeyboardLayout(HKL); 
    4207 BOOL UnregisterClassA(LPCSTR,HINSTANCE); 
    4208 BOOL UnregisterClassW(LPCWSTR,HINSTANCE); 
    4209 BOOL UnregisterHotKey(HWND,int); 
     4205BOOL UnregisterClassA(LPCSTR, HINSTANCE); 
     4206BOOL UnregisterClassW(LPCWSTR, HINSTANCE); 
     4207BOOL UnregisterHotKey(HWND, int); 
    42104208BOOL UpdateWindow(HWND); 
    4211 BOOL ValidateRect(HWND,LPCRECT); 
    4212 BOOL ValidateRgn(HWND,HRGN); 
     4209BOOL ValidateRect(HWND, LPCRECT); 
     4210BOOL ValidateRgn(HWND, HRGN); 
    42134211SHORT VkKeyScanA(CHAR); 
    4214 SHORT VkKeyScanExA(CHAR,HKL); 
    4215 SHORT VkKeyScanExW(WCHAR,HKL); 
     4212SHORT VkKeyScanExA(CHAR, HKL); 
     4213SHORT VkKeyScanExW(WCHAR, HKL); 
    42164214SHORT VkKeyScanW(WCHAR); 
    4217 DWORD WaitForInputIdle(HANDLE,DWORD); 
     4215DWORD WaitForInputIdle(HANDLE, DWORD); 
    42184216BOOL WaitMessage(); 
    42194217HWND WindowFromDC(HDC hDC); 
    42204218HWND WindowFromPoint(POINT); 
    4221 UINT WinExec(LPCSTR,UINT); 
    4222 BOOL WinHelpA(HWND,LPCSTR,UINT,DWORD); 
    4223 BOOL WinHelpW(HWND,LPCWSTR,UINT,DWORD); 
     4219UINT WinExec(LPCSTR, UINT); 
     4220BOOL WinHelpA(HWND, LPCSTR, UINT, DWORD); 
     4221BOOL WinHelpW(HWND, LPCWSTR, UINT, DWORD); 
    42244222 
    42254223extern (C) { 
    4226     int wsprintfA(LPSTR,LPCSTR,...); 
    4227     int wsprintfW(LPWSTR,LPCWSTR,...); 
     4224    int wsprintfA(LPSTR, LPCSTR, ...); 
     4225    int wsprintfW(LPWSTR, LPCWSTR, ...); 
    42284226} 
    42294227 
    42304228 
    42314229// These shouldn't be necessary for D. 
    4232 typedef char * va_list_; 
    4233 int wvsprintfA(LPSTR,LPCSTR, va_list_ arglist); 
    4234 int wvsprintfW(LPWSTR,LPCWSTR,va_list_ arglist); 
     4230typedef char* va_list_; 
     4231int wvsprintfA(LPSTR, LPCSTR, va_list_ arglist); 
     4232int wvsprintfW(LPWSTR, LPCWSTR, va_list_ arglist); 
    42354233 
    42364234 
    42374235static if (_WIN32_WINDOWS == 0x400) { 
    42384236// On Win95, there's only one version. 
    4239 int BroadcastSystemMessage(DWORD,LPDWORD,UINT,WPARAM,LPARAM); 
    4240 } 
    4241 static if (_WIN32_WINNT >= 0x0400) { 
    4242 int BroadcastSystemMessageA(DWORD,LPDWORD,UINT,WPARAM,LPARAM); 
    4243 int BroadcastSystemMessageW(DWORD,LPDWORD,UINT,WPARAM,LPARAM); 
    4244 } 
    4245 static if (_WIN32_WINNT >= 0x0501) { 
    4246 int BroadcastSystemMessageExA(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO); 
    4247 int BroadcastSystemMessageExW(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO); 
    4248 } 
    4249  
    4250 static if (_WIN32_WINNT >= 0x0403) { 
    4251 UINT SendInput(UINT,LPINPUT,int); 
    4252 } 
    4253 static if (_WIN32_WINNT >= 0x0500) { 
    4254 BOOL AnimateWindow(HWND,DWORD,DWORD); 
    4255 BOOL EndTask(HWND,BOOL,BOOL); 
    4256 DWORD GetGuiResources(HANDLE,DWORD); 
     4237int BroadcastSystemMessage(DWORD, LPDWORD, UINT, WPARAM, LPARAM); 
     4238} 
     4239static if (_WIN32_WINNT >= 0x400) { 
     4240int BroadcastSystemMessageA(DWORD, LPDWORD, UINT, WPARAM, LPARAM); 
     4241int BroadcastSystemMessageW(DWORD, LPDWORD, UINT, WPARAM, LPARAM); 
     4242} 
     4243static if (_WIN32_WINNT >= 0x501) { 
     4244int BroadcastSystemMessageExA(DWORD, LPDWORD, UINT, WPARAM, LPARAM, PBSMINFO); 
     4245int BroadcastSystemMessageExW(DWORD, LPDWORD, UINT, WPARAM, LPARAM, PBSMINFO); 
     4246} 
     4247 
     4248static if (_WIN32_WINNT >= 0x403) { 
     4249UINT SendInput(UINT, LPINPUT, int); 
     4250} 
     4251static if (_WIN32_WINNT >= 0x500) { 
     4252BOOL AnimateWindow(HWND, DWORD, DWORD); 
     4253BOOL EndTask(HWND, BOOL, BOOL); 
     4254DWORD GetGuiResources(HANDLE, DWORD); 
    42574255HWND GetShellWindow(); 
    42584256BOOL GetProcessDefaultLayout(DWORD*); 
    42594257BOOL IsHungAppWindow(HWND); 
    42604258BOOL LockWorkStation(); 
    4261 HDEVNOTIFY RegisterDeviceNotificationA(HANDLE,LPVOID,DWORD); 
    4262 HDEVNOTIFY RegisterDeviceNotificationW(HANDLE,LPVOID,DWORD); 
     4259HDEVNOTIFY RegisterDeviceNotificationA(HANDLE, LPVOID, DWORD); 
     4260HDEVNOTIFY RegisterDeviceNotificationW(HANDLE, LPVOID, DWORD); 
    42634261BOOL SetProcessDefaultLayout(DWORD); 
    4264 void SwitchToThisWindow(HWND,BOOL); 
    4265 BOOL SetLayeredWindowAttributes(HWND,COLORREF,BYTE,DWORD); 
    4266 BOOL UpdateLayeredWindow(HWND,HDC,POINT*,SIZE*,HDC,POINT*,COLORREF,BLENDFUNCTION*,DWORD); 
    4267 BOOL UserHandleGrantAccess(HANDLE,HANDLE,BOOL); 
    4268 } 
    4269 static if (_WIN32_WINNT >= 0x0501) { 
    4270 UINT GetRawInputBuffer(PRAWINPUT,PUINT,UINT); 
    4271 UINT GetRawInputData(HRAWINPUT,UINT,LPVOID,PUINT,UINT); 
    4272 UINT GetRawInputDeviceInfoA(HANDLE,UINT,LPVOID,PUINT); 
    4273 UINT GetRawInputDeviceInfoW(HANDLE,UINT,LPVOID,PUINT); 
    4274 UINT GetRawInputDeviceList(PRAWINPUTDEVICELIST,PUINT,UINT); 
    4275 UINT GetRegisteredRawInputDevices(PRAWINPUTDEVICE,PUINT,UINT); 
    4276 LRESULT DefRawInputProc(PRAWINPUT*,INT,UINT); 
    4277 BOOL RegisterRawInputDevices(PCRAWINPUTDEVICE,UINT,UINT); 
     4262void SwitchToThisWindow(HWND, BOOL); 
     4263BOOL SetLayeredWindowAttributes(HWND, COLORREF, BYTE, DWORD); 
     4264BOOL UpdateLayeredWindow(HWND, HDC, POINT*, SIZE*, HDC, POINT*, COLORREF, BLENDFUNCTION*, DWORD); 
     4265BOOL UserHandleGrantAccess(HANDLE, HANDLE, BOOL); 
     4266} 
     4267static if (_WIN32_WINNT >= 0x501) { 
     4268UINT GetRawInputBuffer(PRAWINPUT, PUINT, UINT); 
     4269UINT GetRawInputData(HRAWINPUT, UINT, LPVOID, PUINT, UINT); 
     4270UINT GetRawInputDeviceInfoA(HANDLE, UINT, LPVOID, PUINT); 
     4271UINT GetRawInputDeviceInfoW(HANDLE, UINT, LPVOID, PUINT); 
     4272UINT GetRawInputDeviceList(PRAWINPUTDEVICELIST, PUINT, UINT); 
     4273UINT GetRegisteredRawInputDevices(PRAWINPUTDEVICE, PUINT, UINT); 
     4274LRESULT DefRawInputProc(PRAWINPUT*, INT, UINT); 
     4275BOOL RegisterRawInputDevices(PCRAWINPUTDEVICE, UINT, UINT); 
    42784276 
    42794277BOOL IsGUIThread(BOOL); 
    42804278BOOL IsWinEventHookInstalled(DWORD); 
    4281 BOOL PrintWindow(HWND,HDC,UINT); 
    4282 BOOL GetLayeredWindowAttributes(HWND,COLORREF*,BYTE*,DWORD*); 
    4283 } 
    4284 static if (WINVER >= 0x0410) { 
    4285     BOOL EnumDisplayMonitors(HDC,LPCRECT,MONITORENUMPROC,LPARAM); 
    4286     BOOL GetMonitorInfoA(HMONITOR,LPMONITORINFO); 
    4287     BOOL GetMonitorInfoW(HMONITOR,LPMONITORINFO); 
    4288     HMONITOR MonitorFromPoint(POINT,DWORD); 
    4289     HMONITOR MonitorFromRect(LPCRECT,DWORD); 
    4290     HMONITOR MonitorFromWindow(HWND,DWORD); 
    4291 } 
    4292 static if (WINVER >= 0x0500) { 
    4293 BOOL GetGUIThreadInfo(DWORD,LPGUITHREADINFO); 
    4294 void NotifyWinEvent(DWORD,HWND,LONG,LONG); 
    4295 HWINEVENTHOOK SetWinEventHook(UINT,UINT,HMODULE,WINEVENTPROC,DWORD,DWORD,UINT); 
     4279BOOL PrintWindow(HWND, HDC, UINT); 
     4280BOOL GetLayeredWindowAttributes(HWND, COLORREF*, BYTE*, DWORD*); 
     4281} 
     4282static if (WINVER >= 0x410) { 
     4283    BOOL EnumDisplayMonitors(HDC, LPCRECT, MONITORENUMPROC, LPARAM); 
     4284    BOOL GetMonitorInfoA(HMONITOR, LPMONITORINFO); 
     4285    BOOL GetMonitorInfoW(HMONITOR, LPMONITORINFO); 
     4286    HMONITOR MonitorFromPoint(POINT, DWORD); 
     4287    HMONITOR MonitorFromRect(LPCRECT, DWORD); 
     4288    HMONITOR MonitorFromWindow(HWND, DWORD); 
     4289} 
     4290static if (WINVER >= 0x500) { 
     4291BOOL GetGUIThreadInfo(DWORD, LPGUITHREADINFO); 
     4292void NotifyWinEvent(DWORD, HWND, LONG, LONG); 
     4293HWINEVENTHOOK SetWinEventHook(UINT, UINT, HMODULE, WINEVENTPROC, DWORD, DWORD, UINT); 
    42964294BOOL UnhookWinEvent(HWINEVENTHOOK); 
    42974295BOOL UnregisterDeviceNotification(HANDLE); 
    42984296} 
    4299 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
    4300 BOOL EnumDisplaySettingsExA(LPCSTR,DWORD,LPDEVMODEA,DWORD); 
    4301 BOOL EnumDisplaySettingsExW(LPCWSTR,DWORD,LPDEVMODEW,DWORD); 
     4297static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) { 
     4298BOOL EnumDisplaySettingsExA(LPCSTR, DWORD, LPDEVMODEA, DWORD); 
     4299BOOL EnumDisplaySettingsExW(LPCWSTR, DWORD, LPDEVMODEW, DWORD); 
    43024300BOOL FlashWindowEx(PFLASHWINFO); 
    43034301DWORD GetClipboardSequenceNumber(); 
    43044302DWORD InSendMessageEx(LPVOID); 
    43054303} 
    4306 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490)) { 
     4304static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) { 
    43074305BOOL AllowSetForegroundWindow(DWORD); 
    43084306BOOL LockSetForegroundWindow(UINT); 
    4309 int GetMouseMovePointsEx(UINT,LPMOUSEMOVEPOINT,LPMOUSEMOVEPOINT,int,DWORD); 
     4307int GetMouseMovePointsEx(UINT, LPMOUSEMOVEPOINT, LPMOUSEMOVEPOINT, int, DWORD); 
    43104308} 
    43114309 
    43124310version (Win64) { 
    4313 LONG_PTR GetWindowLongPtrA(HWND,int); 
    4314 LONG_PTR GetWindowLongPtrW(HWND,int); 
    4315 LONG_PTR SetWindowLongPtrA(HWND,int,LONG_PTR); 
    4316 LONG_PTR SetWindowLongPtrW(HWND,int,LONG_PTR); 
     4311LONG_PTR GetWindowLongPtrA(HWND, int); 
     4312LONG_PTR GetWindowLongPtrW(HWND, int); 
     4313LONG_PTR SetWindowLongPtrA(HWND, int, LONG_PTR); 
     4314LONG_PTR SetWindowLongPtrW(HWND, int, LONG_PTR); 
    43174315} else { 
    43184316alias GetWindowLongA GetWindowLongPtrA; 
     
    43524350alias AppendMenuW AppendMenu; 
    43534351alias BroadcastSystemMessageW BroadcastSystemMessage; 
    4354 static if (_WIN32_WINNT >= 0x0501) { 
     4352static if (_WIN32_WINNT >= 0x501) { 
    43554353alias BroadcastSystemMessageExW BroadcastSystemMessageEx; 
    43564354} 
     
    44154413} 
    44164414alias GetPropW GetProp; 
    4417 static if (_WIN32_WINNT >= 0x0501) { 
     4415static if (_WIN32_WINNT >= 0x501) { 
    44184416alias GetRawInputDeviceInfoW GetRawInputDeviceInfo; 
    44194417} 
     
    44614459alias RegisterClassExW RegisterClassEx; 
    44624460alias RegisterClipboardFormatW RegisterClipboardFormat; 
    4463 static if (WINVER >= 0x0500) { 
     4461static if (WINVER >= 0x500) { 
    44644462alias RegisterDeviceNotificationW RegisterDeviceNotification; 
    44654463} 
     
    44954493alias CreateDesktopW CreateDesktop; 
    44964494alias EnumDisplaySettingsW EnumDisplaySettings; 
    4497 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
     4495static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) { 
    44984496alias EnumDisplaySettingsExW EnumDisplaySettingsEx; 
    44994497} 
     
    45274525alias AppendMenuA AppendMenu; 
    45284526alias BroadcastSystemMessageA BroadcastSystemMessage; 
    4529 static if (_WIN32_WINNT >= 0x0501) { 
     4527static if (_WIN32_WINNT >= 0x501) { 
    45304528alias BroadcastSystemMessageExA BroadcastSystemMessageEx; 
    45314529} 
     
    45904588} 
    45914589alias GetPropA GetProp; 
    4592 static if (_WIN32_WINNT >= 0x0501) { 
     4590static if (_WIN32_WINNT >= 0x501) { 
    45934591alias GetRawInputDeviceInfoA GetRawInputDeviceInfo; 
    45944592} 
     
    46364634alias RegisterClassExA RegisterClassEx; 
    46374635alias RegisterClipboardFormatA RegisterClipboardFormat; 
    4638 static if (WINVER >= 0x0500) { 
     4636static if (WINVER >= 0x500) { 
    46394637alias RegisterDeviceNotificationA RegisterDeviceNotification; 
    46404638} 
     
    46704668alias CreateDesktopA CreateDesktop; 
    46714669alias EnumDisplaySettingsA EnumDisplaySettings; 
    4672 static if ((_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0410)) { 
    4673 alias EnumDisplaySettingsExA EnumDisplaySettingsEx; 
    4674 } 
    4675 alias EnumDisplayDevicesA EnumDisplayDevices; 
    4676 } 
    4677  
    4678  
    4679 alias WNDCLASS * LPWNDCLASS, PWNDCLASS; 
    4680 alias WNDCLASSEX * LPWNDCLASSEX, PWNDCLASSEX; 
    4681 alias MENUITEMINFO * LPMENUITEMINFO; 
    4682 alias MSGBOXPARAMS * PMSGBOXPARAMS, LPMSGBOXPARAMS; 
    4683 alias HIGHCONTRAST * LPHIGHCONTRAST; 
    4684 alias SERIALKEYS * LPSERIALKEYS; 
    4685 alias SOUNDSENTRY * LPSOUNDSENTRY; 
    4686 alias CREATESTRUCT * LPCREATESTRUCT; 
    4687 alias CBT_CREATEWND * LPCBT_CREATEWND; 
    4688 alias MDICREATESTRUCT * LPMDICREATESTRUCT; 
    4689 alias MULTIKEYHELP * PMULTIKEYHELP, LPMULTIKEYHELP; 
    4690 alias MONITORINFOEX * LPMONITORINFOEX; 
    4691 alias ICONMETRICS * LPICONMETRICS; 
    4692 alias NONCLIENTMETRICS * LPNONCLIENTMETRICS; 
     4670static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) { 
     4671   alias EnumDisplaySettingsExA EnumDisplaySettingsEx; 
     4672} 
     4673   alias EnumDisplayDevicesA EnumDisplayDevices; 
     4674} 
     4675 
     4676 
     4677alias WNDCLASS* LPWNDCLASS, PWNDCLASS; 
     4678alias WNDCLASSEX* LPWNDCLASSEX, PWNDCLASSEX; 
     4679alias MENUITEMINFO* LPMENUITEMINFO; 
     4680alias MSGBOXPARAMS* PMSGBOXPARAMS, LPMSGBOXPARAMS; 
     4681alias HIGHCONTRAST* LPHIGHCONTRAST; 
     4682alias SERIALKEYS* LPSERIALKEYS; 
     4683alias SOUNDSENTRY* LPSOUNDSENTRY; 
     4684alias CREATESTRUCT* LPCREATESTRUCT; 
     4685alias CBT_CREATEWND* LPCBT_CREATEWND; 
     4686alias MDICREATESTRUCT* LPMDICREATESTRUCT; 
     4687alias MULTIKEYHELP* PMULTIKEYHELP, LPMULTIKEYHELP; 
     4688alias MONITORINFOEX* LPMONITORINFOEX; 
     4689alias ICONMETRICS* LPICONMETRICS; 
     4690alias NONCLIENTMETRICS* LPNONCLIENTMETRICS; 
  • trunk/win32/winver.d

    r43 r135  
    9292 
    9393enum : DWORD { 
    94     VIFF_FORCEINSTALL  = 1, 
    95     VIFF_DONTDELETEOLD = 2 
     94    VIFF_FORCEINSTALL  = 1, 
     95    VIFF_DONTDELETEOLD 
    9696} 
    9797 
  • trunk/win32/wtypes.d

    r127 r135  
    2222const ROTFLAGS_ALLOWANYCLIENT         = 0x02; 
    2323 
    24  /* also in winsock2.h */ 
    25 struct BLOB{  
    26     ULONG  cbSize; 
    27     BYTE   *pBlobData; 
    28 } 
    29 alias BLOB * PBLOB, LPBLOB; 
    30  
    31 enum DVASPECT
     24// also in winsock2.h 
     25struct BLOB { 
     26    ULONG cbSize; 
     27    BYTE* pBlobData; 
     28} 
     29alias BLOB* PBLOB, LPBLOB; 
     30 
     31enum DVASPECT
    3232    DVASPECT_CONTENT   = 1, 
    3333    DVASPECT_THUMBNAIL = 2, 
     
    3636} 
    3737 
    38 enum DVASPECT2
     38enum DVASPECT2
    3939    DVASPECT_OPAQUE      = 16, 
    4040    DVASPECT_TRANSPARENT = 32 
    4141} 
    4242 
    43 enum STATFLAG
     43enum STATFLAG
    4444    STATFLAG_DEFAULT = 0, 
    4545    STATFLAG_NONAME  = 1 
    4646} 
    4747 
    48 enum MEMCTX
     48enum MEMCTX
    4949    MEMCTX_LOCAL = 0, 
    5050    MEMCTX_TASK, 
     
    5555} 
    5656 
    57 enum MSHCTX
     57enum MSHCTX
    5858    MSHCTX_LOCAL = 0, 
    5959    MSHCTX_NOSHAREDMEM, 
     
    6363} 
    6464 
    65 enum CLSCTX
     65enum CLSCTX
    6666    CLSCTX_INPROC_SERVER   = 1, 
    6767    CLSCTX_INPROC_HANDLER  = 2, 
     
    7171} 
    7272 
    73 enum MSHLFLAGS
     73enum MSHLFLAGS
    7474    MSHLFLAGS_NORMAL, 
    7575    MSHLFLAGS_TABLESTRONG, 
     
    7777} 
    7878 
    79 struct FLAGGED_WORD_BLOB
     79struct FLAGGED_WORD_BLOB
    8080    uint fFlags; 
    8181    uint clSize; 
     
    112112    PBYTE pData; 
    113113} 
    114 alias BSTRBLOB * LPBSTRBLOB; 
     114alias BSTRBLOB* LPBSTRBLOB; 
    115115 
    116116// Used only in the PROPVARIANT structure 
    117117// According to the 2003 SDK, this should be in propidl.h, not here. 
    118 struct CLIPDATA
     118struct CLIPDATA
    119119    ULONG cbSize; 
    120120    int ulClipFmt; 
     
    122122} 
    123123 
    124 enum STGC
     124enum STGC
    125125    STGC_DEFAULT, 
    126126    STGC_OVERWRITE, 
     
    129129} 
    130130 
    131 enum STGMOVE
     131enum STGMOVE
    132132    STGMOVE_MOVE, 
    133133    STGMOVE_COPY, 
     
    189189}; 
    190190 
    191 struct BYTE_SIZEDARR
    192     uint clSize; 
    193     byte *pData; 
    194 } 
    195  
    196 struct WORD_SIZEDARR
    197     uint clSize; 
    198     ushort *pData; 
    199 } 
    200  
    201 struct DWORD_SIZEDARR
     191struct BYTE_SIZEDARR
     192    uint clSize; 
     193    byte* pData; 
     194} 
     195 
     196struct WORD_SIZEDARR
     197    uint clSize; 
     198    ushort* pData; 
     199} 
     200 
     201struct DWORD_SIZEDARR
    202202uint clSize; 
    203 uint *pData; 
    204 } 
    205  
    206 struct HYPER_SIZEDARR
    207     uint clSize; 
    208     hyper *pData; 
     203uint* pData; 
     204} 
     205 
     206struct HYPER_SIZEDARR
     207    uint clSize; 
     208    hyper* pData; 
    209209} 
    210210 
     
    212212 
    213213 
    214 struct DECIMAL
     214struct DECIMAL
    215215    USHORT wReserved; 
    216216    union {