OSDN Git Service

* NEWS: Add and adjust release notes for 4.0.
[mingw/mingw-org-wsl.git] / include / odbcinst.h
1 /**
2  * @file odbcinst.h
3  * Copyright 2012, 2013 MinGW.org project
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  * 
12  * The above copyright notice and this permission notice (including the next
13  * paragraph) shall be included in all copies or substantial portions of the
14  * Software.
15  * 
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22  * DEALINGS IN THE SOFTWARE.
23  */
24 #ifndef _ODBCINST_H
25 #define _ODBCINST_H
26 #pragma GCC system_header
27 #define __TEST_SQL_NOUNICODEMAP
28 #include <_mingw.h>
29
30 #include <sql.h>
31
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35
36 #ifndef ODBCVER
37 #define ODBCVER 0x0351
38 #endif
39
40 #define INSTAPI __stdcall
41 #define  ODBC_ADD_DSN     1
42 #define  ODBC_CONFIG_DSN  2
43 #define  ODBC_REMOVE_DSN  3
44
45 #if (ODBCVER >= 0x0250)
46 #define ODBC_ADD_SYS_DSN 4
47 #define ODBC_CONFIG_SYS_DSN 5
48 #define ODBC_REMOVE_SYS_DSN 6
49 #define ODBC_INSTALL_INQUIRY 1 
50 #define ODBC_INSTALL_COMPLETE 2
51 #define ODBC_INSTALL_DRIVER 1
52 #define ODBC_REMOVE_DRIVER 2
53 #define ODBC_CONFIG_DRIVER 3
54 #define ODBC_CONFIG_DRIVER_MAX 100
55 #endif /* (ODBCVER >= 0x0250) */
56
57 #if (ODBCVER >= 0x0300)
58 #define ODBC_REMOVE_DEFAULT_DSN 7
59 #define ODBC_BOTH_DSN 0
60 #define ODBC_USER_DSN 1
61 #define ODBC_SYSTEM_DSN 2
62 #define ODBC_ERROR_GENERAL_ERR 1
63 #define ODBC_ERROR_INVALID_BUFF_LEN 2
64 #define ODBC_ERROR_INVALID_HWND 3
65 #define ODBC_ERROR_INVALID_STR 4
66 #define ODBC_ERROR_INVALID_REQUEST_TYPE 5
67 #define ODBC_ERROR_COMPONENT_NOT_FOUND 6
68 #define ODBC_ERROR_INVALID_NAME 7
69 #define ODBC_ERROR_INVALID_KEYWORD_VALUE 8
70 #define ODBC_ERROR_INVALID_DSN 9
71 #define ODBC_ERROR_INVALID_INF 10
72 #define ODBC_ERROR_REQUEST_FAILED 11
73 #define ODBC_ERROR_INVALID_PATH 12
74 #define ODBC_ERROR_LOAD_LIB_FAILED 13
75 #define ODBC_ERROR_INVALID_PARAM_SEQUENCE 14
76 #define ODBC_ERROR_INVALID_LOG_FILE 15
77 #define ODBC_ERROR_USER_CANCELED 16
78 #define ODBC_ERROR_USAGE_UPDATE_FAILED 17
79 #define ODBC_ERROR_CREATE_DSN_FAILED 18
80 #define ODBC_ERROR_WRITING_SYSINFO_FAILED 19
81 #define ODBC_ERROR_REMOVE_DSN_FAILED 20
82 #define ODBC_ERROR_OUT_OF_MEM 21
83 #define ODBC_ERROR_OUTPUT_STRING_TRUNCATED 22
84 #endif /* ODBCVER >= 0x0300 */
85
86 #ifndef RC_INVOKED
87 BOOL INSTAPI ConfigDSN(HWND,WORD,LPCSTR,LPCSTR);
88 BOOL INSTAPI ConfigDSNW(HWND,WORD,LPCWSTR,LPCWSTR);
89 BOOL INSTAPI ConfigTranslator(HWND,DWORD*);
90 BOOL INSTAPI SQLConfigDataSource(HWND,WORD,LPCSTR,LPCSTR);
91 BOOL INSTAPI SQLConfigDataSourceW(HWND,WORD,LPCWSTR,LPCWSTR);
92 BOOL INSTAPI SQLCreateDataSource(HWND,LPCSTR);
93 BOOL INSTAPI SQLCreateDataSourceW(HWND,LPCWSTR);
94 BOOL INSTAPI SQLGetAvailableDrivers(LPCSTR,LPSTR,WORD,WORD*);
95 BOOL INSTAPI SQLGetAvailableDriversW(LPCWSTR,LPWSTR,WORD,WORD*);
96 BOOL INSTAPI SQLGetInstalledDrivers(LPSTR,WORD,WORD*);
97 BOOL INSTAPI SQLGetInstalledDriversW(LPWSTR,WORD,WORD*);
98 int INSTAPI SQLGetPrivateProfileString(LPCSTR,LPCSTR,LPCSTR,LPSTR,int,LPCSTR);
99 int INSTAPI SQLGetPrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,int,LPCWSTR);
100 BOOL INSTAPI SQLGetTranslator(HWND,LPSTR,WORD,WORD*,LPSTR,WORD,WORD*,DWORD*);
101 BOOL INSTAPI SQLGetTranslatorW(HWND,LPWSTR,WORD,WORD*,LPWSTR,WORD,WORD*,DWORD*);
102 BOOL INSTAPI SQLInstallDriver(LPCSTR,LPCSTR,LPSTR,WORD,WORD*);
103 BOOL INSTAPI SQLInstallDriverManager(LPSTR,WORD,WORD*);
104 BOOL INSTAPI SQLInstallDriverManagerW(LPWSTR,WORD,WORD*);
105 BOOL INSTAPI SQLInstallDriverW(LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*);
106 BOOL INSTAPI SQLInstallODBC(HWND,LPCSTR,LPCSTR,LPCSTR);
107 BOOL INSTAPI SQLInstallODBCW(HWND,LPCWSTR,LPCWSTR,LPCWSTR);
108 BOOL INSTAPI SQLManageDataSources(HWND);
109 BOOL INSTAPI SQLRemoveDefaultDataSource(void);
110 BOOL INSTAPI SQLRemoveDSNFromIni(LPCSTR);
111 BOOL INSTAPI SQLRemoveDSNFromIniW(LPCWSTR);
112 BOOL INSTAPI SQLValidDSN(LPCSTR);
113 BOOL INSTAPI SQLValidDSNW(LPCWSTR);
114 BOOL INSTAPI SQLWriteDSNToIni(LPCSTR,LPCSTR);
115 BOOL INSTAPI SQLWriteDSNToIniW(LPCWSTR,LPCWSTR);
116 BOOL INSTAPI SQLWritePrivateProfileString(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
117 BOOL INSTAPI SQLWritePrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR);
118
119 #if(ODBCVER >= 0x0250) 
120 BOOL INSTAPI ConfigDriver(HWND,WORD,LPCSTR,LPCSTR,LPSTR,WORD,WORD*);
121 BOOL INSTAPI ConfigDriverW(HWND,WORD,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*);
122 BOOL INSTAPI SQLConfigDriver(HWND,WORD,LPCSTR,LPCSTR,LPSTR,WORD,WORD*);
123 BOOL INSTAPI SQLConfigDriverW(HWND,WORD,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*);
124 BOOL INSTAPI SQLInstallTranslator(LPCSTR,LPCSTR,LPCSTR,LPSTR,WORD,WORD*,WORD,LPDWORD);
125 BOOL INSTAPI SQLInstallTranslatorW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*,WORD,LPDWORD);
126 BOOL INSTAPI SQLRemoveDriver(LPCSTR,BOOL,LPDWORD);
127 BOOL INSTAPI SQLRemoveDriverManager(LPDWORD);
128 BOOL INSTAPI SQLRemoveDriverW(LPCWSTR,BOOL,LPDWORD);
129 BOOL INSTAPI SQLRemoveTranslator(LPCSTR,LPDWORD);
130 BOOL INSTAPI SQLRemoveTranslatorW(LPCWSTR,LPDWORD);
131 #endif /* ODBCVER >= 0x0250 */  
132
133 #if (ODBCVER >= 0x0300) 
134 BOOL INSTAPI SQLGetConfigMode(UWORD*);
135 BOOL INSTAPI SQLInstallDriverEx(LPCSTR,LPCSTR,LPSTR,WORD,WORD*,WORD,LPDWORD);
136 BOOL INSTAPI SQLInstallDriverExW(LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*,WORD,LPDWORD);
137 SQLRETURN INSTAPI SQLInstallerError(WORD,DWORD*,LPSTR,WORD,WORD*);
138 SQLRETURN INSTAPI SQLInstallerErrorW(WORD,DWORD*,LPWSTR,WORD,WORD*);
139 BOOL INSTAPI SQLInstallTranslatorEx(LPCSTR,LPCSTR,LPSTR,WORD,WORD*,WORD,LPDWORD);
140 BOOL INSTAPI SQLInstallTranslatorExW(LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*,WORD,LPDWORD);
141 SQLRETURN INSTAPI SQLPostInstallerError(DWORD,LPCSTR);
142 SQLRETURN INSTAPI SQLPostInstallerErrorW(DWORD,LPCWSTR);
143 BOOL INSTAPI SQLReadFileDSN(LPCSTR,LPCSTR,LPCSTR,LPSTR,WORD,WORD*);
144 BOOL INSTAPI SQLReadFileDSNW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*);
145 BOOL INSTAPI SQLSetConfigMode(UWORD);
146 BOOL INSTAPI SQLWriteFileDSN(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
147 BOOL INSTAPI SQLWriteFileDSNW(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR);
148 #endif /* ODBCVER >= 0x0300 */  
149
150 /* Cannot use __AW() since the A version does not exist. */
151 #if defined (UNICODE) && !defined (SQL_NOUNICODEMAP)
152 #define SQLConfigDataSource SQLConfigDataSourceW
153 #define SQLConfigDriver SQLConfigDriverW
154 #define SQLCreateDataSource SQLCreateDataSourceW 
155 #define SQLGetAvailableDrivers SQLGetAvailableDriversW 
156 #define SQLGetInstalledDrivers SQLGetInstalledDriversW
157 #define SQLGetPrivateProfileString SQLGetPrivateProfileStringW
158 #define SQLGetTranslator SQLGetTranslatorW 
159 #define SQLInstallDriver SQLInstallDriverW 
160 #define SQLInstallDriverEx SQLInstallDriverExW
161 #define SQLInstallDriverManager SQLInstallDriverManagerW
162 #define SQLInstallerError SQLInstallerErrorW
163 #define SQLInstallODBC SQLInstallODBCW 
164 #define SQLInstallTranslator SQLInstallTranslatorW
165 #define SQLInstallTranslatorEx SQLInstallTranslatorExW
166 #define SQLPostInstallerError SQLPostInstallerErrorW
167 #define SQLReadFileDSN SQLReadFileDSNW
168 #define SQLRemoveDriver SQLRemoveDriverW
169 #define SQLRemoveDSNFromIni SQLRemoveDSNFromIniW 
170 #define SQLRemoveTranslator SQLRemoveTranslatorW
171 #define SQLValidDSN SQLValidDSNW 
172 #define SQLWriteDSNToIni SQLWriteDSNToIniW 
173 #define SQLWriteFileDSN SQLWriteFileDSNW
174 #define SQLWritePrivateProfileString SQLWritePrivateProfileStringW
175 #endif /* UNICODE && !SQL_NOUNICODEMAP */
176
177 #endif /* RC_INVOKED */
178
179 #ifdef __cplusplus
180 }
181 #endif
182
183 #endif /* _ODBCINST_H */