root/trunk/win32/rapi.d

Revision 319, 2.1 kB (checked in by dyh, 3 years ago)

cbSize initial values.
VK and WS enums cleanup.

Line 
1 /***********************************************************************\
2 *                                 rapi.d                                *
3 *                                                                       *
4 *                       Windows API header module                       *
5 *                                                                       *
6 *                 Translated from MinGW Windows headers                 *
7 *                           by Stewart Gordon                           *
8 *                                                                       *
9 *                       Placed into public domain                       *
10 \***********************************************************************/
11 module win32.rapi;
12
13 /* Comment from MinGW
14     NOTE: This strictly does not belong in the Win32 API since it's
15     really part of Platform SDK.
16  */
17
18 private import win32.winbase, win32.windef;
19
20 struct IRAPIStream {
21     IRAPIStreamVtbl* lpVtbl;
22 }
23
24 enum RAPISTREAMFLAG {
25     STREAM_TIMEOUT_READ
26 }
27
28 extern (Windows) {
29     alias HRESULT function(IRAPIStream*, RAPISTREAMFLAG, DWORD)  _SetRapiStat;
30     alias HRESULT function(IRAPIStream*, RAPISTREAMFLAG, DWORD*) _GetRapiStat;
31 }
32
33 struct IRAPIStreamVtbl {
34     _SetRapiStat SetRapiStat;
35     _GetRapiStat GetRapiStat;
36 }
37
38 // FIXME: what's this?
39 //typedef HRESULT(STDAPICALLTYPE RAPIEXT)(DWORD, BYTE, DWORD, BYTE, IRAPIStream*);
40
41 struct RAPIINIT {
42     DWORD   cbSize = this.sizeof;
43     HANDLE  heRapiInit;
44     HRESULT hrRapiInit;
45 }
46
47 extern (Windows) {
48     HRESULT CeRapiInit();
49     HRESULT CeRapiInitEx(RAPIINIT*);
50     BOOL CeCreateProcess(LPCWSTR, LPCWSTR, LPSECURITY_ATTRIBUTES,
51       LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPWSTR, LPSTARTUPINFO,
52       LPPROCESS_INFORMATION);
53     HRESULT CeRapiUninit();
54     BOOL CeWriteFile(HANDLE, LPCVOID, DWORD, LPDWORD, LPOVERLAPPED);
55     HANDLE CeCreateFile(LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD,
56       DWORD, HANDLE);
57     BOOL CeCreateDirectory(LPCWSTR, LPSECURITY_ATTRIBUTES);
58     DWORD CeGetLastError();
59     BOOL CeGetFileTime(HANDLE, LPFILETIME, LPFILETIME, LPFILETIME);
60     BOOL CeCloseHandle(HANDLE);
61 }
Note: See TracBrowser for help on using the browser.