3 * Copyright 2012, 2013 MinGW.org project
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:
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
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.
26 #pragma GCC system_header
27 #define __TEST_SQL_NOUNICODEMAP
37 #define ODBCVER 0x0351
40 #define INSTAPI __stdcall
41 #define ODBC_ADD_DSN 1
42 #define ODBC_CONFIG_DSN 2
43 #define ODBC_REMOVE_DSN 3
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) */
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 */
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);
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 */
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 */
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 */
177 #endif /* RC_INVOKED */
183 #endif /* _ODBCINST_H */