| /** | |
| * Windows API header module | |
| * | |
| * Translated from MinGW Windows headers | |
| * | |
| * Authors: Stewart Gordon | |
| * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0) | |
| * Source: $(DRUNTIMESRC core/sys/windows/_rapi.d) | |
| */ | |
| module core.sys.windows.rapi; | |
| version (Windows): | |
| /* Comment from MinGW | |
| NOTE: This strictly does not belong in the Win32 API since it's | |
| really part of Platform SDK. | |
| */ | |
| import core.sys.windows.winbase, core.sys.windows.windef; | |
| extern (Windows): | |
| enum RAPISTREAMFLAG | |
| { | |
| STREAM_TIMEOUT_READ | |
| } | |
| interface IRAPIStream | |
| { | |
| HRESULT SetRapiStat(RAPISTREAMFLAG, DWORD); | |
| HRESULT GetRapiStat(RAPISTREAMFLAG, DWORD*); | |
| } | |
| alias RAPIEXT = HRESULT function(DWORD, BYTE, DWORD, BYTE, IRAPIStream); | |
| struct RAPIINIT | |
| { | |
| DWORD cbSize = this.sizeof; | |
| HANDLE heRapiInit; | |
| HRESULT hrRapiInit; | |
| } | |
| HRESULT CeRapiInit(); | |
| HRESULT CeRapiInitEx(RAPIINIT*); | |
| BOOL CeCreateProcess(LPCWSTR, LPCWSTR, LPSECURITY_ATTRIBUTES, | |
| LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPWSTR, LPSTARTUPINFO, | |
| LPPROCESS_INFORMATION); | |
| HRESULT CeRapiUninit(); | |
| BOOL CeWriteFile(HANDLE, LPCVOID, DWORD, LPDWORD, LPOVERLAPPED); | |
| HANDLE CeCreateFile(LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, | |
| DWORD, HANDLE); | |
| BOOL CeCreateDirectory(LPCWSTR, LPSECURITY_ATTRIBUTES); | |
| DWORD CeGetLastError(); | |
| BOOL CeGetFileTime(HANDLE, LPFILETIME, LPFILETIME, LPFILETIME); | |
| BOOL CeCloseHandle(HANDLE); |