| 1 | /* rapi.h - main header file for the RAPI API | 
 
 
 
 
 | 2 |  | 
 
 
 
 
 | 3 | NOTE: This strictly does not belong in the Win32 API since it's | 
 
 
 
 
 | 4 | really part of Platform SDK. | 
 
 
 
 
 | 5 |  | 
 
 
 
 
 | 6 | */ | 
 
 
 
 
 | 7 |  | 
 
 
 
 
 | 8 | #ifndef _RAPI_H | 
 
 
 
 
 | 9 | #define _RAPI_H | 
 
 
 
 
 | 10 | #if __GNUC__ >=3 | 
 
 
 
 
 | 11 | #pragma GCC system_header | 
 
 
 
 
 | 12 | #endif | 
 
 
 
 
 | 13 |  | 
 
 
 
 
 | 14 | typedef struct IRAPIStream | 
 
 
 
 
 | 15 | { | 
 
 
 
 
 | 16 | struct IRAPIStreamVtbl * lpVtbl; | 
 
 
 
 
 | 17 | } IRAPIStream; | 
 
 
 
 
 | 18 |  | 
 
 
 
 
 | 19 | typedef struct IRAPIStreamVtbl IRAPIStreamVtbl; | 
 
 
 
 
 | 20 |  | 
 
 
 
 
 | 21 | typedef enum tagRAPISTREAMFLAG | 
 
 
 
 
 | 22 | { | 
 
 
 
 
 | 23 | STREAM_TIMEOUT_READ | 
 
 
 
 
 | 24 | } RAPISTREAMFLAG; | 
 
 
 
 
 | 25 |  | 
 
 
 
 
 | 26 | struct IRAPIStreamVtbl | 
 
 
 
 
 | 27 | { | 
 
 
 
 
 | 28 | HRESULT (__stdcall * SetRapiStat)( IRAPIStream *, RAPISTREAMFLAG, DWORD); | 
 
 
 
 
 | 29 | HRESULT (__stdcall * GetRapiStat)( IRAPIStream *, RAPISTREAMFLAG, DWORD *); | 
 
 
 
 
 | 30 | }; | 
 
 
 
 
 | 31 |  | 
 
 
 
 
 | 32 | typedef  HRESULT (STDAPICALLTYPE RAPIEXT)(DWORD, BYTE, DWORD, BYTE, IRAPIStream *); | 
 
 
 
 
 | 33 |  | 
 
 
 
 
 | 34 | typedef struct _RAPIINIT | 
 
 
 
 
 | 35 | { | 
 
 
 
 
 | 36 | DWORD cbSize; | 
 
 
 
 
 | 37 | HANDLE heRapiInit; | 
 
 
 
 
 | 38 | HRESULT hrRapiInit; | 
 
 
 
 
 | 39 | } RAPIINIT; | 
 
 
 
 
 | 40 |  | 
 
 
 
 
 | 41 | STDAPI CeRapiInit (void); | 
 
 
 
 
 | 42 | STDAPI CeRapiInitEx (RAPIINIT*); | 
 
 
 
 
 | 43 | STDAPI_(BOOL) CeCreateProcess (LPCWSTR, LPCWSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, | 
 
 
 
 
 | 44 | BOOL, DWORD, LPVOID, LPWSTR, LPSTARTUPINFO, LPPROCESS_INFORMATION); | 
 
 
 
 
 | 45 | STDAPI CeRapiUninit (void); | 
 
 
 
 
 | 46 |  | 
 
 
 
 
 | 47 | STDAPI_(BOOL) CeWriteFile (HANDLE, LPCVOID, DWORD, LPDWORD, LPOVERLAPPED); | 
 
 
 
 
 | 48 | STDAPI_(HANDLE) CeCreateFile (LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, DWORD, HANDLE); | 
 
 
 
 
 | 49 | STDAPI_(BOOL) CeCreateDirectory (LPCWSTR, LPSECURITY_ATTRIBUTES); | 
 
 
 
 
 | 50 | STDAPI_(DWORD) CeGetLastError (void); | 
 
 
 
 
 | 51 | STDAPI_(BOOL) CeGetFileTime (HANDLE, LPFILETIME, LPFILETIME, LPFILETIME); | 
 
 
 
 
 | 52 | STDAPI_(BOOL) CeCloseHandle (HANDLE); | 
 
 
 
 
 | 53 |  | 
 
 
 
 
 | 54 | #endif /* _RAPI_H */ |