|
1
|
/* |
|
2
|
** Copyright (c) 2007 D. Richard Hipp |
|
3
|
** |
|
4
|
** This program is free software; you can redistribute it and/or |
|
5
|
** modify it under the terms of the Simplified BSD License (also |
|
6
|
** known as the "2-Clause License" or "FreeBSD License".) |
|
7
|
|
|
8
|
** This program is distributed in the hope that it will be useful, |
|
9
|
** but without any warranty; without even the implied warranty of |
|
10
|
** merchantability or fitness for a particular purpose. |
|
11
|
** |
|
12
|
** Author contact information: |
|
13
|
** [email protected] |
|
14
|
** http://www.hwaci.com/drh/ |
|
15
|
** |
|
16
|
******************************************************************************* |
|
17
|
** |
|
18
|
** This file contains preprocessor directives used to help integrate with the |
|
19
|
** Cygwin runtime and build environment. The intent of this file is to keep |
|
20
|
** the Cygwin-specific preprocessor directives together. |
|
21
|
*/ |
|
22
|
|
|
23
|
#if defined(__CYGWIN__) && !defined(CYGSUP_H) |
|
24
|
#define CYGSUP_H |
|
25
|
|
|
26
|
/* |
|
27
|
******************************************************************************* |
|
28
|
** Include any Cygwin-specific headers here. ** |
|
29
|
******************************************************************************* |
|
30
|
*/ |
|
31
|
|
|
32
|
#include <wchar.h> |
|
33
|
#include <sys/cygwin.h> |
|
34
|
|
|
35
|
/* |
|
36
|
******************************************************************************* |
|
37
|
** Define any Cygwin-specific preprocessor macros here. All macros defined in |
|
38
|
** this section should be wrapped with #ifndef, in order to allow them to be |
|
39
|
** externally overridden. |
|
40
|
******************************************************************************* |
|
41
|
*/ |
|
42
|
|
|
43
|
#ifndef CP_UTF8 |
|
44
|
# define CP_UTF8 65001 |
|
45
|
#endif |
|
46
|
|
|
47
|
#ifndef WINBASEAPI |
|
48
|
# define WINBASEAPI __declspec(dllimport) |
|
49
|
#endif |
|
50
|
|
|
51
|
#ifndef WINADVAPI |
|
52
|
# define WINADVAPI __declspec(dllimport) |
|
53
|
#endif |
|
54
|
|
|
55
|
#ifndef SHSTDAPI |
|
56
|
# define SHSTDAPI __declspec(dllimport) |
|
57
|
#endif |
|
58
|
|
|
59
|
#ifndef STDAPI |
|
60
|
# define STDAPI __stdcall |
|
61
|
#endif |
|
62
|
|
|
63
|
#ifndef WINAPI |
|
64
|
# define WINAPI __stdcall |
|
65
|
#endif |
|
66
|
|
|
67
|
/* |
|
68
|
******************************************************************************* |
|
69
|
** Declare any Cygwin-specific Win32 or other APIs here. Functions declared in |
|
70
|
** this section should use the built-in ANSI C types in order to make sure this |
|
71
|
** header file continues to work as a self-contained unit. |
|
72
|
** |
|
73
|
** On Cygwin64, "long" is 64-bit but in Win64 it's 32-bit. That's why in the |
|
74
|
** signatures below "long" should not be used. They now use "int" instead. |
|
75
|
******************************************************************************* |
|
76
|
*/ |
|
77
|
|
|
78
|
WINADVAPI extern WINAPI int RegOpenKeyExW( |
|
79
|
void *, /* HKEY */ |
|
80
|
const wchar_t *, /* LPCWSTR */ |
|
81
|
unsigned int, /* DWORD */ |
|
82
|
unsigned int, /* REGSAM */ |
|
83
|
void * /* PHKEY */ |
|
84
|
); |
|
85
|
|
|
86
|
WINADVAPI extern WINAPI int RegQueryValueExW( |
|
87
|
void *, /* HKEY */ |
|
88
|
const wchar_t *, /* LPCWSTR */ |
|
89
|
unsigned int *, /* LPDWORD */ |
|
90
|
unsigned int *, /* LPDWORD */ |
|
91
|
unsigned char *, /* LPBYTE */ |
|
92
|
unsigned int * /* LPDWORD */ |
|
93
|
); |
|
94
|
|
|
95
|
SHSTDAPI extern STDAPI void *ShellExecuteW( |
|
96
|
void *, /* HWND */ |
|
97
|
const wchar_t *, /* LPCWSTR */ |
|
98
|
const wchar_t *, /* LPCWSTR */ |
|
99
|
const wchar_t *, /* LPCWSTR */ |
|
100
|
const wchar_t *, /* LPCWSTR */ |
|
101
|
int /* INT */ |
|
102
|
); |
|
103
|
|
|
104
|
WINBASEAPI extern WINAPI int WideCharToMultiByte( |
|
105
|
unsigned int, /* UINT */ |
|
106
|
unsigned int, /* DWORD */ |
|
107
|
const wchar_t *, /* LPCWSTR */ |
|
108
|
int, /* int */ |
|
109
|
char *, /* LPSTR */ |
|
110
|
int, /* int */ |
|
111
|
const char *, /* LPCSTR */ |
|
112
|
int * /* LPBOOL */ |
|
113
|
); |
|
114
|
|
|
115
|
WINBASEAPI extern WINAPI int MultiByteToWideChar( |
|
116
|
unsigned int, /* UINT */ |
|
117
|
unsigned int, /* DWORD */ |
|
118
|
const char *, /* LPCSTR */ |
|
119
|
int, /* int */ |
|
120
|
wchar_t *, /* LPWSTR */ |
|
121
|
int /* int */ |
|
122
|
); |
|
123
|
|
|
124
|
#endif /* defined(__CYGWIN__) && !defined(CYGSUP_H) */ |
|
125
|
|