Changeset 207

Show
Ignore:
Timestamp:
09/03/07 10:09:43 (4 years ago)
Author:
smjg
Message:

Updated winbase.d to MinGW 3.10; tweaked a few other files

Files:

Legend:

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

    r201 r207  
    44*                       Windows API header module                       * 
    55*                                                                       * 
    6 *                 Translated from MinGW Windows headers                 * 
     6*             Translated from MinGW API for MS-Windows 3.10             * 
    77*                           by Stewart Gordon                           * 
    88*                                                                       * 
  • trunk/win32/basetsd.d

    r43 r207  
    11/***********************************************************************\ 
    2 *                               basestd.d                               * 
     2*                               basetsd.d                               * 
    33*                                                                       * 
    44*                       Windows API header module                       * 
    55*                                                                       * 
    6 *                 Translated from MinGW Windows headers                 * 
     6*             Translated from MinGW API for MS-Windows 3.10             * 
    77*                           by Stewart Gordon                           * 
    88*                                                                       * 
     
    1515version (Win64) { 
    1616    alias long __int3264; 
    17     enum : ulong { ADDRESS_TAG_BIT = 0x40000000000 } 
     17    const ulong ADDRESS_TAG_BIT = 0x40000000000; 
    1818 
    1919    alias long INT_PTR, LONG_PTR; 
     
    2525    alias uint UHALF_PTR; 
    2626    alias uint* PUHALF_PTR; 
    27     // LATER: translate *To* functions once Win64 is here 
     27 
     28    /*  *To* functions are conditioned out in MinGW. 
     29     *  Presumably they're not working/tested yet.  Comment: 
     30            TODO when WIN64 is here 
     31     */ 
    2832} else { 
    2933    alias int __int3264; 
    30     enum : uint { ADDRESS_TAG_BIT = 0x80000000 } 
     34    const uint ADDRESS_TAG_BIT = 0x80000000; 
    3135 
    3236    alias int INT_PTR, LONG_PTR; 
  • trunk/win32/basetyps.d

    r155 r207  
    44*                       Windows API header module                       * 
    55*                                                                       * 
    6 *                 Translated from MinGW Windows headers                 * 
     6*             Translated from MinGW API for MS-Windows 3.10             * 
    77*                                                                       * 
    88*                       Placed into public domain                       * 
     
    1212private import win32.windef; 
    1313 
    14 struct GUID {          // size is 16 
     14struct GUID {  // size is 16 
    1515align(1): 
    16     DWORD Data1; 
    17     WORD  Data2; 
    18     WORD  Data3; 
    19     BYTE  Data4[8]
     16    DWORD   Data1; 
     17    WORD    Data2; 
     18    WORD    Data3; 
     19    BYTE[8] Data4
    2020} 
    2121alias GUID UUID, IID, CLSID, FMTID, uuid_t; 
  • trunk/win32/winbase.d

    r160 r207  
    44*                       Windows API header module                       * 
    55*                                                                       * 
    6 *                 Translated from MinGW Windows headers                 * 
     6*             Translated from MinGW API for MS-Windows 3.10             * 
    77*                                                                       * 
    88*                       Placed into public domain                       * 
     
    537537// used in EXCEPTION_RECORD 
    538538enum : DWORD { 
    539     STATUS_WAIT_0           = 0, 
    540     STATUS_ABANDONED_WAIT_0 = 0x80, 
    541     STATUS_USER_APC         = 0xC0, 
    542     STATUS_TIMEOUT          = 0x102, 
    543     STATUS_PENDING          = 0x103, 
    544  
    545     STATUS_SEGMENT_NOTIFICATION  = 0x40000005, 
    546     STATUS_GUARD_PAGE_VIOLATION  = 0x80000001, 
    547     STATUS_DATATYPE_MISALIGNMENT = 0x80000002, 
    548     STATUS_BREAKPOINT            = 0x80000003, 
    549     STATUS_SINGLE_STEP           = 0x80000004, 
    550  
    551     STATUS_ACCESS_VIOLATION         = 0xC0000005, 
    552     STATUS_IN_PAGE_ERROR            = 0xC0000006, 
    553     STATUS_INVALID_HANDLE           = 0xC0000008, 
    554  
    555     STATUS_NO_MEMORY                = 0xC0000017, 
    556     STATUS_ILLEGAL_INSTRUCTION      = 0xC000001D, 
    557     STATUS_NONCONTINUABLE_EXCEPTION = 0xC0000025, 
    558     STATUS_INVALID_DISPOSITION      = 0xC0000026, 
    559     STATUS_ARRAY_BOUNDS_EXCEEDED    = 0xC000008C, 
    560     STATUS_FLOAT_DENORMAL_OPERAND   = 0xC000008D, 
    561     STATUS_FLOAT_DIVIDE_BY_ZERO     = 0xC000008E, 
    562     STATUS_FLOAT_INEXACT_RESULT     = 0xC000008F, 
    563     STATUS_FLOAT_INVALID_OPERATION  = 0xC0000090, 
    564     STATUS_FLOAT_OVERFLOW           = 0xC0000091, 
    565     STATUS_FLOAT_STACK_CHECK        = 0xC0000092, 
    566     STATUS_FLOAT_UNDERFLOW          = 0xC0000093, 
    567     STATUS_INTEGER_DIVIDE_BY_ZERO   = 0xC0000094, 
    568     STATUS_INTEGER_OVERFLOW         = 0xC0000095, 
    569     STATUS_PRIVILEGED_INSTRUCTION   = 0xC0000096, 
    570     STATUS_STACK_OVERFLOW           = 0xC00000FD, 
    571     STATUS_CONTROL_C_EXIT           = 0xC000013A, 
     539    STATUS_WAIT_0                      = 0, 
     540    STATUS_ABANDONED_WAIT_0            = 0x00000080, 
     541    STATUS_USER_APC                    = 0x000000C0, 
     542    STATUS_TIMEOUT                     = 0x00000102, 
     543    STATUS_PENDING                     = 0x00000103, 
     544 
     545    STATUS_SEGMENT_NOTIFICATION        = 0x40000005, 
     546    STATUS_GUARD_PAGE_VIOLATION        = 0x80000001, 
     547    STATUS_DATATYPE_MISALIGNMENT       = 0x80000002, 
     548    STATUS_BREAKPOINT                  = 0x80000003, 
     549    STATUS_SINGLE_STEP                 = 0x80000004, 
     550 
     551    STATUS_ACCESS_VIOLATION            = 0xC0000005, 
     552    STATUS_IN_PAGE_ERROR               = 0xC0000006, 
     553    STATUS_INVALID_HANDLE              = 0xC0000008, 
     554 
     555    STATUS_NO_MEMORY                   = 0xC0000017, 
     556    STATUS_ILLEGAL_INSTRUCTION         = 0xC000001D, 
     557    STATUS_NONCONTINUABLE_EXCEPTION    = 0xC0000025, 
     558    STATUS_INVALID_DISPOSITION         = 0xC0000026, 
     559    STATUS_ARRAY_BOUNDS_EXCEEDED       = 0xC000008C, 
     560    STATUS_FLOAT_DENORMAL_OPERAND      = 0xC000008D, 
     561    STATUS_FLOAT_DIVIDE_BY_ZERO        = 0xC000008E, 
     562    STATUS_FLOAT_INEXACT_RESULT        = 0xC000008F, 
     563    STATUS_FLOAT_INVALID_OPERATION     = 0xC0000090, 
     564    STATUS_FLOAT_OVERFLOW              = 0xC0000091, 
     565    STATUS_FLOAT_STACK_CHECK           = 0xC0000092, 
     566    STATUS_FLOAT_UNDERFLOW             = 0xC0000093, 
     567    STATUS_INTEGER_DIVIDE_BY_ZERO      = 0xC0000094, 
     568    STATUS_INTEGER_OVERFLOW            = 0xC0000095, 
     569    STATUS_PRIVILEGED_INSTRUCTION      = 0xC0000096, 
     570    STATUS_STACK_OVERFLOW              = 0xC00000FD, 
     571    STATUS_CONTROL_C_EXIT              = 0xC000013A, 
     572    STATUS_DLL_INIT_FAILED             = 0xC0000142, 
     573    STATUS_DLL_INIT_FAILED_LOGOFF      = 0xC000026B, 
    572574 
    573575    CONTROL_C_EXIT                     = STATUS_CONTROL_C_EXIT, 
     
    617619    LOCKFILE_EXCLUSIVE_LOCK   = 2; 
    618620 
    619 // for LogonUser() 
    620 enum : DWORD { 
    621     LOGON32_LOGON_INTERACTIVE = 2, 
    622     LOGON32_LOGON_BATCH       = 4, 
    623     LOGON32_LOGON_SERVICE     = 5 
    624     // TODO(D): More values from MSDN 
    625     //LOGON32_LOGON_NETWORK 
    626     //LOGON32_LOGON_NETWORK_CLEARTEXT 
    627     //LOGON32_LOGON_NEW_CREDENTIALS 
    628     //LOGON32_LOGON_UNLOCK 
    629 
    630  
    631 // for LogonUser() 
    632 enum : DWORD { 
    633     LOGON32_PROVIDER_DEFAULT  = 0, 
    634     LOGON32_PROVIDER_WINNT35  = 1 
    635     //LOGON32_PROVIDER_WINNT40 = ? 
    636     //LOGON32_PROVIDER_WINNT50 = ? 
     621static if (_WIN32_WINNT_ONLY) { 
     622    // for LogonUser() 
     623    enum : DWORD { 
     624        LOGON32_LOGON_INTERACTIVE = 2, 
     625        LOGON32_LOGON_NETWORK     = 3, 
     626        LOGON32_LOGON_BATCH       = 4, 
     627        LOGON32_LOGON_SERVICE     = 5, 
     628        LOGON32_LOGON_UNLOCK      = 7 
     629    } 
     630 
     631    static if (_WIN32_WINNT >= 0x500) enum : DWORD { 
     632        LOGON32_LOGON_NETWORK_CLEARTEXT = 8, 
     633        LOGON32_LOGON_NEW_CREDENTIALS   = 9 
     634    } 
     635 
     636    // for LogonUser() 
     637    enum : DWORD { 
     638        LOGON32_PROVIDER_DEFAULT = 0, 
     639        LOGON32_PROVIDER_WINNT35 = 1, 
     640        LOGON32_PROVIDER_WINNT40 = 2, 
     641        LOGON32_PROVIDER_WINNT50 = 3 
     642    } 
    637643} 
    638644 
     
    694700 
    695701// also in ddk/ntapi.h 
     702// To restore default error mode, call SetErrorMode(0) 
    696703enum { 
    697704    SEM_FAILCRITICALERRORS     = 0x0001, 
     
    886893const DWORD TLS_OUT_OF_INDEXES = 0xFFFFFFFF; 
    887894 
     895static if (WINVER >= 0x501) { 
     896    const DWORD 
     897        GET_MODULE_HANDLE_EX_FLAG_PIN                = 1, 
     898        GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT = 2, 
     899        GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS       = 4; 
     900} 
     901 
    888902static if (_WIN32_WINNT >= 0x0501) { 
    889903    // for ACTCTX 
     
    908922} 
    909923 
    910 static if (_WIN32_WINNT >= 0x0500) { // requires XP, or Win 2000 Pro. 
     924static if (_WIN32_WINNT_ONLY && _WIN32_WINNT >= 0x0500) { 
    911925    // ReplaceFile() 
    912926    const DWORD 
     
    11411155 
    11421156struct OVERLAPPED { 
    1143     DWORD Internal; 
    1144     DWORD InternalHigh; 
    1145     DWORD Offset; 
    1146     DWORD OffsetHigh; 
    1147     HANDLE hEvent; 
     1157    ULONG_PTR Internal; 
     1158    ULONG_PTR InternalHigh; 
     1159    DWORD     Offset; 
     1160    DWORD     OffsetHigh; 
     1161    HANDLE    hEvent; 
    11481162} 
    11491163alias OVERLAPPED* POVERLAPPED, LPOVERLAPPED; 
     
    12451259 
    12461260struct WIN32_FIND_DATAA { 
    1247     DWORD dwFileAttributes; 
    1248     FILETIME ftCreationTime; 
    1249     FILETIME ftLastAccessTime; 
    1250     FILETIME ftLastWriteTime; 
    1251     DWORD nFileSizeHigh; 
    1252     DWORD nFileSizeLow; 
    1253     DWORD dwReserved0; 
    1254     DWORD dwReserved1; 
    1255     CHAR cFileName[MAX_PATH]; 
    1256     CHAR cAlternateFileName[14]; 
     1261    DWORD          dwFileAttributes; 
     1262    FILETIME       ftCreationTime; 
     1263    FILETIME       ftLastAccessTime; 
     1264    FILETIME       ftLastWriteTime; 
     1265    DWORD          nFileSizeHigh; 
     1266    DWORD          nFileSizeLow; 
     1267// #ifdef _WIN32_WCE 
     1268//  DWORD dwOID; 
     1269// #else 
     1270    DWORD          dwReserved0; 
     1271    DWORD          dwReserved1; 
     1272// #endif 
     1273    CHAR[MAX_PATH] cFileName; 
     1274// #ifndef _WIN32_WCE 
     1275    CHAR[14]       cAlternateFileName; 
     1276// #endif 
    12571277} 
    12581278alias WIN32_FIND_DATAA* PWIN32_FIND_DATAA, LPWIN32_FIND_DATAA; 
    12591279 
    12601280struct WIN32_FIND_DATAW { 
    1261     DWORD dwFileAttributes; 
    1262     FILETIME ftCreationTime; 
    1263     FILETIME ftLastAccessTime; 
    1264     FILETIME ftLastWriteTime; 
    1265     DWORD nFileSizeHigh; 
    1266     DWORD nFileSizeLow; 
    1267     DWORD dwReserved0; 
    1268     DWORD dwReserved1; 
    1269     WCHAR cFileName[MAX_PATH]; 
    1270     WCHAR cAlternateFileName[14]; 
     1281    DWORD           dwFileAttributes; 
     1282    FILETIME        ftCreationTime; 
     1283    FILETIME        ftLastAccessTime; 
     1284    FILETIME        ftLastWriteTime; 
     1285    DWORD           nFileSizeHigh; 
     1286    DWORD           nFileSizeLow; 
     1287// #ifdef _WIN32_WCE 
     1288//  DWORD dwOID; 
     1289// #else 
     1290    DWORD           dwReserved0; 
     1291    DWORD           dwReserved1; 
     1292// #endif 
     1293    WCHAR[MAX_PATH] cFileName; 
     1294// #ifndef _WIN32_WCE 
     1295    WCHAR[14]       cAlternateFileName; 
     1296// #endif 
    12711297} 
    12721298alias WIN32_FIND_DATAW* PWIN32_FIND_DATAW, LPWIN32_FIND_DATAW; 
     
    15561582    alias void function(PVOID) LPFIBER_START_ROUTINE; 
    15571583 
    1558     alias BOOL function(HMODULE, LPCTSTR, LPCTSTR, WORD, LONG) ENUMRESLANGPROC; 
    1559     alias BOOL function(HMODULE, LPCTSTR, LPTSTR, LONG) ENUMRESNAMEPROC; 
    1560     alias BOOL function(HMODULE, LPTSTR, LONG) ENUMRESTYPEPROC; 
     1584    alias BOOL function(HMODULE, LPCSTR, LPCSTR, WORD, LONG) ENUMRESLANGPROCA; 
     1585    alias BOOL function(HMODULE, LPCWSTR, LPCWSTR, WORD, LONG) ENUMRESLANGPROCW; 
     1586    alias BOOL function(HMODULE, LPCSTR, LPSTR, LONG) ENUMRESNAMEPROCA; 
     1587    alias BOOL function(HMODULE, LPCWSTR, LPWSTR, LONG) ENUMRESNAMEPROCW; 
     1588    alias BOOL function(HMODULE, LPSTR, LONG) ENUMRESTYPEPROCA; 
     1589    alias BOOL function(HMODULE, LPWSTR, LONG) ENUMRESTYPEPROCW; 
    15611590    alias void function(DWORD, DWORD, LPOVERLAPPED) LPOVERLAPPED_COMPLETION_ROUTINE; 
    15621591    alias LONG function(LPEXCEPTION_POINTERS) PTOP_LEVEL_EXCEPTION_FILTER; 
    15631592    alias PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER; 
    15641593 
    1565     alias void function(DWORD) PAPCFUNC; 
     1594    alias void function(ULONG_PTR) PAPCFUNC; 
    15661595    alias void function(PVOID, DWORD, DWORD) PTIMERAPCROUTINE; 
    15671596 
     
    15761605 
    15771606extern (Windows) { 
    1578  
    15791607    BOOL AccessCheck(PSECURITY_DESCRIPTOR, HANDLE, DWORD, PGENERIC_MAPPING, PPRIVILEGE_SET, PDWORD, PDWORD, PBOOL); 
    15801608    BOOL AccessCheckAndAuditAlarmA(LPCSTR, LPVOID, LPSTR, LPSTR, PSECURITY_DESCRIPTOR, DWORD, PGENERIC_MAPPING, BOOL, PDWORD, PBOOL, PBOOL); 
     
    16571685    HANDLE CreateFileMappingA(HANDLE, LPSECURITY_ATTRIBUTES, DWORD, DWORD, DWORD, LPCSTR); 
    16581686    HANDLE CreateFileMappingW(HANDLE, LPSECURITY_ATTRIBUTES, DWORD, DWORD, DWORD, LPCWSTR); 
    1659     HANDLE CreateIoCompletionPort(HANDLE, HANDLE, DWORD, DWORD); 
     1687    HANDLE CreateIoCompletionPort(HANDLE, HANDLE, ULONG_PTR, DWORD); 
    16601688    HANDLE CreateMailslotA(LPCSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES); 
    16611689    HANDLE CreateMailslotW(LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES); 
     
    17771805    DWORD GetCurrentProcessId(); 
    17781806    HANDLE GetCurrentThread(); 
     1807/* In MinGW: 
     1808#ifdef _WIN32_WCE 
     1809extern DWORD GetCurrentThreadId(void); 
     1810#else 
     1811WINBASEAPI DWORD WINAPI GetCurrentThreadId(void); 
     1812#endif 
     1813*/ 
    17791814    DWORD GetCurrentThreadId(); 
    17801815 
     
    18551890    DWORD GetProfileStringA(LPCSTR, LPCSTR, LPCSTR, LPSTR, DWORD); 
    18561891    DWORD GetProfileStringW(LPCWSTR, LPCWSTR, LPCWSTR, LPWSTR, DWORD); 
    1857     BOOL GetQueuedCompletionStatus(HANDLE, PDWORD, PDWORD, LPOVERLAPPED*, DWORD); 
     1892    BOOL GetQueuedCompletionStatus(HANDLE, PDWORD, PULONG_PTR, LPOVERLAPPED*, DWORD); 
    18581893    BOOL GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR_CONTROL, PDWORD); 
    18591894    BOOL GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR, LPBOOL, PACL*, LPBOOL); 
     
    19792014    BOOL LockFileEx(HANDLE, DWORD, DWORD, DWORD, DWORD, LPOVERLAPPED); 
    19802015    PVOID LockResource(HGLOBAL); 
    1981     BOOL LogonUserA(LPSTR, LPSTR, LPSTR, DWORD, DWORD, PHANDLE); 
    1982     BOOL LogonUserW(LPWSTR, LPWSTR, LPWSTR, DWORD, DWORD, PHANDLE); 
     2016    BOOL LogonUserA(LPSTR, LPSTR, LPSTR, DWORD, DWORD, PHANDLE); // *** NT only 
     2017    BOOL LogonUserW(LPWSTR, LPWSTR, LPWSTR, DWORD, DWORD, PHANDLE); // *** NT only 
    19832018    BOOL LookupAccountNameA(LPCSTR, LPCSTR, PSID, PDWORD, LPSTR, PDWORD, PSID_NAME_USE); 
    19842019    BOOL LookupAccountNameW(LPCWSTR, LPCWSTR, PSID, PDWORD, LPWSTR, PDWORD, PSID_NAME_USE); 
     
    20452080    void OutputDebugStringW(LPCWSTR); 
    20462081    BOOL PeekNamedPipe(HANDLE, PVOID, DWORD, PDWORD, PDWORD, PDWORD); 
    2047     BOOL PostQueuedCompletionStatus(HANDLE, DWORD, DWORD, LPOVERLAPPED); 
     2082    BOOL PostQueuedCompletionStatus(HANDLE, DWORD, ULONG_PTR, LPOVERLAPPED); 
    20482083    DWORD PrepareTape(HANDLE, DWORD, BOOL); 
    20492084    BOOL PrivilegeCheck (HANDLE, PPRIVILEGE_SET, PBOOL); 
     
    20562091    BOOL QueryPerformanceCounter(PLARGE_INTEGER); 
    20572092    BOOL QueryPerformanceFrequency(PLARGE_INTEGER); 
    2058     DWORD QueueUserAPC(PAPCFUNC, HANDLE, DWORD); 
     2093    DWORD QueueUserAPC(PAPCFUNC, HANDLE, ULONG_PTR); 
    20592094    void RaiseException(DWORD, DWORD, DWORD, DWORD*); 
    20602095    BOOL ReadDirectoryChangesW(HANDLE, PVOID, DWORD, BOOL, DWORD, PDWORD, LPOVERLAPPED, LPOVERLAPPED_COMPLETION_ROUTINE); 
     
    20732108    BOOL ReportEventA(HANDLE, WORD, WORD, DWORD, PSID, WORD, DWORD, LPCSTR*, PVOID); 
    20742109    BOOL ReportEventW(HANDLE, WORD, WORD, DWORD, PSID, WORD, DWORD, LPCWSTR*, PVOID); 
     2110/* In MinGW: 
     2111#ifdef _WIN32_WCE 
     2112extern BOOL ResetEvent(HANDLE); 
     2113#else 
     2114WINBASEAPI BOOL WINAPI ResetEvent(HANDLE); 
     2115#endif 
     2116*/ 
    20752117    BOOL ResetEvent(HANDLE); 
    20762118    UINT ResetWriteWatch(LPVOID, SIZE_T); 
     
    20952137    BOOL SetEnvironmentVariableW(LPCWSTR, LPCWSTR); 
    20962138    UINT SetErrorMode(UINT); 
     2139/* In MinGW: 
     2140#ifdef _WIN32_WCE 
     2141extern BOOL SetEvent(HANDLE); 
     2142#else 
     2143WINBASEAPI BOOL WINAPI SetEvent(HANDLE); 
     2144#endif 
     2145*/ 
    20972146    BOOL SetEvent(HANDLE); 
    20982147    VOID SetFileApisToANSI(); 
     
    21182167    BOOL SetProcessPriorityBoost(HANDLE, BOOL); 
    21192168    BOOL SetProcessShutdownParameters(DWORD, DWORD); 
    2120     BOOL SetProcessWorkingSetSize(HANDLE, DWORD, DWORD); 
     2169    BOOL SetProcessWorkingSetSize(HANDLE, SIZE_T, SIZE_T); 
    21212170    BOOL SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR, SECURITY_DESCRIPTOR_CONTROL, SECURITY_DESCRIPTOR_CONTROL); 
    21222171    BOOL SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR, BOOL, PACL, BOOL); 
     
    22302279        BOOL TerminateJobObject(HANDLE, UINT); 
    22312280        BOOL AssignProcessToJobObject(HANDLE, HANDLE); 
     2281 
     2282        BOOL ChangeTimerQueueTimer(HANDLE,HANDLE,ULONG,ULONG); 
    22322283        BOOL DeleteTimerQueue(HANDLE); 
    22332284        BOOL DeleteTimerQueueEx(HANDLE, HANDLE); 
     
    22352286        BOOL DeleteVolumeMountPointA(LPCSTR); 
    22362287        BOOL DeleteVolumeMountPointW(LPCWSTR); 
    2237         BOOL CreateProcessWithLogonW (LPCWSTR, LPCWSTR, LPCWSTR, DWORD, 
    2238                 LPCWSTR, LPWSTR, DWORD, LPVOID, 
    2239                 LPCWSTR, LPSTARTUPINFOW, 
    2240                 LPPROCESS_INFORMATION); 
     2288 
     2289        BOOL CreateProcessWithLogonW(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, LPCWSTR, 
     2290          LPWSTR, DWORD, LPVOID, LPCWSTR, LPSTARTUPINFOW, LPPROCESS_INFORMATION); 
    22412291        enum { 
    22422292            LOGON_WITH_PROFILE=0x00000001, 
    22432293            LOGON_NETCREDENTIALS_ONLY=0x00000002 
    22442294        } 
     2295 
    22452296        HANDLE CreateTimerQueue(); 
    22462297        BOOL CreateTimerQueueTimer(PHANDLE, HANDLE, WAITORTIMERCALLBACK, PVOID, DWORD, DWORD, ULONG); 
     
    22722323        BOOL SetVolumeMountPointA(LPCSTR, LPCSTR); 
    22732324        BOOL SetVolumeMountPointW(LPCWSTR, LPCWSTR); 
     2325        BOOL UnregisterWait(HANDLE); 
    22742326        BOOL UnregisterWaitEx(HANDLE, HANDLE); 
    22752327        BOOL AllocateUserPhysicalPages(HANDLE, PULONG_PTR, PULONG_PTR); 
     
    22782330        BOOL MapUserPhysicalPagesScatter(PVOID*, ULONG_PTR, PULONG_PTR); 
    22792331        BOOL ProcessIdToSessionId(DWORD, DWORD*); 
     2332        BOOL QueryInformationJobObject(HANDLE, JOBOBJECTINFOCLASS, LPVOID, DWORD, 
     2333          LPDWORD); 
    22802334        ULONG RemoveVectoredExceptionHandler(PVOID); 
    22812335        BOOL ReplaceFileA(LPCSTR, LPCSTR, LPCSTR, DWORD, LPVOID, LPVOID); 
     
    22832337        BOOL SetComputerNameExA(COMPUTER_NAME_FORMAT, LPCSTR); 
    22842338        BOOL SetComputerNameExW(COMPUTER_NAME_FORMAT, LPCWSTR); 
     2339        BOOL SetInformationJobObject(HANDLE, JOBOBJECTINFOCLASS, LPVOID, DWORD); 
    22852340    } 
    22862341 
     
    23292384        BOOL GetSystemRegistryQuota(PDWORD, PDWORD); 
    23302385        BOOL GetThreadIOPendingFlag(HANDLE, PBOOL); 
     2386        HANDLE ReOpenFile(HANDLE, DWORD, DWORD, DWORD); 
    23312387        BOOL SetDllDirectoryA(LPCSTR); 
    23322388        BOOL SetDllDirectoryW(LPCWSTR); 
    23332389        BOOL SetFirmwareEnvironmentVariableA(LPCSTR, LPCSTR, PVOID, DWORD); 
    23342390        BOOL SetFirmwareEnvironmentVariableW(LPCWSTR, LPCWSTR, PVOID, DWORD); 
    2335    
     2391       
    23362392 
    23372393    static if (_WIN32_WINNT >= 0x0510) { 
    23382394        VOID RestoreLastError(DWORD); 
    23392395    } 
    2340 } // extern(Windows) 
    2341  
    2342  
    2343 // ------ 
    2344 // Aliases for ASCII or Unicode versions 
    2345  
    2346 version(Unicode) { 
     2396
     2397 
     2398 
     2399version (Unicode) { 
    23472400    alias STARTUPINFOW STARTUPINFO; 
    23482401    alias WIN32_FIND_DATAW WIN32_FIND_DATA; 
     
    23512404    alias WIN32_FIND_DATA* LPWIN32_FIND_DATA; 
    23522405    alias HW_PROFILE_INFO* LPHW_PROFILE_INFO; 
     2406    alias ENUMRESLANGPROCW ENUMRESLANGPROC; 
     2407    alias ENUMRESNAMEPROCW ENUMRESNAMEPROC; 
     2408    alias ENUMRESTYPEPROCW ENUMRESTYPEPROC; 
    23532409    alias AccessCheckAndAuditAlarmW AccessCheckAndAuditAlarm; 
    23542410    alias AddAtomW AddAtom; 
     
    25232579 
    25242580} else { 
    2525     // -------- 
    2526     // Aliases for ASCII 
    2527  
    25282581    alias STARTUPINFOA STARTUPINFO; 
    25292582    alias WIN32_FIND_DATAA WIN32_FIND_DATA; 
     
    25322585    alias WIN32_FIND_DATA* LPWIN32_FIND_DATA; 
    25332586    alias HW_PROFILE_INFO* LPHW_PROFILE_INFO; 
     2587    alias ENUMRESLANGPROCW ENUMRESLANGPROC; 
     2588    alias ENUMRESNAMEPROCW ENUMRESNAMEPROC; 
     2589    alias ENUMRESTYPEPROCW ENUMRESTYPEPROC; 
    25342590    alias AccessCheckAndAuditAlarmA AccessCheckAndAuditAlarm; 
    25352591    alias AddAtomA AddAtom; 
  • trunk/win32/windows.d

    r180 r207  
    44*                       Windows API header module                       * 
    55*                                                                       * 
    6 *                 Translated from MinGW Windows headers                 * 
     6*             Translated from MinGW API for MS-Windows 3.10             * 
    77*                                                                       * 
    88*                       Placed into public domain                       *