4e2933c620 2015-04-21 kinaba: /***********************************************************************\ 4e2933c620 2015-04-21 kinaba: * rapi.d * 4e2933c620 2015-04-21 kinaba: * * 4e2933c620 2015-04-21 kinaba: * Windows API header module * 4e2933c620 2015-04-21 kinaba: * * 4e2933c620 2015-04-21 kinaba: * Translated from MinGW Windows headers * 4e2933c620 2015-04-21 kinaba: * by Stewart Gordon * 4e2933c620 2015-04-21 kinaba: * * 4e2933c620 2015-04-21 kinaba: * Placed into public domain * 4e2933c620 2015-04-21 kinaba: \***********************************************************************/ 4e2933c620 2015-04-21 kinaba: module win32.rapi; 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: /* Comment from MinGW 9b639cf2d6 2015-05-05 kinaba: NOTE: This strictly does not belong in the Win32 API since it's 9b639cf2d6 2015-05-05 kinaba: really part of Platform SDK. 4e2933c620 2015-04-21 kinaba: */ 4e2933c620 2015-04-21 kinaba: 4e2933c620 2015-04-21 kinaba: private import win32.winbase, win32.windef; 4e2933c620 2015-04-21 kinaba: 9b639cf2d6 2015-05-05 kinaba: extern (Windows): 4e2933c620 2015-04-21 kinaba: 9b639cf2d6 2015-05-05 kinaba: enum RAPISTREAMFLAG 9b639cf2d6 2015-05-05 kinaba: { 9b639cf2d6 2015-05-05 kinaba: STREAM_TIMEOUT_READ 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: 9b639cf2d6 2015-05-05 kinaba: interface IRAPIStream 9b639cf2d6 2015-05-05 kinaba: { 9b639cf2d6 2015-05-05 kinaba: HRESULT SetRapiStat(RAPISTREAMFLAG, DWORD); 9b639cf2d6 2015-05-05 kinaba: HRESULT GetRapiStat(RAPISTREAMFLAG, DWORD*); 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: 9b639cf2d6 2015-05-05 kinaba: alias HRESULT function(DWORD, BYTE, DWORD, BYTE, IRAPIStream) RAPIEXT; 9b639cf2d6 2015-05-05 kinaba: 9b639cf2d6 2015-05-05 kinaba: struct RAPIINIT 9b639cf2d6 2015-05-05 kinaba: { 9b639cf2d6 2015-05-05 kinaba: DWORD cbSize = this.sizeof; 9b639cf2d6 2015-05-05 kinaba: HANDLE heRapiInit; 9b639cf2d6 2015-05-05 kinaba: HRESULT hrRapiInit; 4e2933c620 2015-04-21 kinaba: } 4e2933c620 2015-04-21 kinaba: 9b639cf2d6 2015-05-05 kinaba: HRESULT CeRapiInit(); 9b639cf2d6 2015-05-05 kinaba: HRESULT CeRapiInitEx(RAPIINIT*); 9b639cf2d6 2015-05-05 kinaba: BOOL CeCreateProcess(LPCWSTR, LPCWSTR, LPSECURITY_ATTRIBUTES, 9b639cf2d6 2015-05-05 kinaba: LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPWSTR, LPSTARTUPINFO, 9b639cf2d6 2015-05-05 kinaba: LPPROCESS_INFORMATION); 9b639cf2d6 2015-05-05 kinaba: HRESULT CeRapiUninit(); 9b639cf2d6 2015-05-05 kinaba: BOOL CeWriteFile(HANDLE, LPCVOID, DWORD, LPDWORD, LPOVERLAPPED); 9b639cf2d6 2015-05-05 kinaba: HANDLE CeCreateFile(LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, 9b639cf2d6 2015-05-05 kinaba: DWORD, HANDLE); 9b639cf2d6 2015-05-05 kinaba: BOOL CeCreateDirectory(LPCWSTR, LPSECURITY_ATTRIBUTES); 9b639cf2d6 2015-05-05 kinaba: DWORD CeGetLastError(); 9b639cf2d6 2015-05-05 kinaba: BOOL CeGetFileTime(HANDLE, LPFILETIME, LPFILETIME, LPFILETIME); 9b639cf2d6 2015-05-05 kinaba: BOOL CeCloseHandle(HANDLE);