1 /**
2 * Windows API header module
3 *
4 * Translated from MinGW Windows headers
5 *
6 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
7 * Source: $(DRUNTIMESRC core/sys/windows/_odbcinst.d)
8 */
9 module core.sys.windows.odbcinst;
version(Windows)10 version (Windows):
11 @system:
12
13 version (ANSI) {} else version = Unicode;
14
15 import core.sys.windows.sql;
16 import core.sys.windows.windef;
17
18 /* FIXME: The Unicode/Ansi functions situation is a mess. How do the xxxA
19 * versions of these functions fit into the scheme?
20 */
21
22 // SQLConfigDataSource()
23 enum : WORD {
24 ODBC_ADD_DSN = 1,
25 ODBC_CONFIG_DSN = 2,
26 ODBC_REMOVE_DSN = 3,
27 ODBC_ADD_SYS_DSN = 4,
28 ODBC_CONFIG_SYS_DSN = 5,
29 ODBC_REMOVE_SYS_DSN = 6,
30 ODBC_REMOVE_DEFAULT_DSN = 7
31 }
32
33 // ODBC 3.0+
34 enum : WORD {
35 ODBC_INSTALL_INQUIRY = 1,
36 ODBC_INSTALL_COMPLETE = 2
37 }
38
39 // ODBC 2.5+
40 enum : WORD {
41 ODBC_INSTALL_DRIVER = 1,
42 ODBC_REMOVE_DRIVER = 2,
43 ODBC_CONFIG_DRIVER = 3,
44 ODBC_CONFIG_DRIVER_MAX = 100
45 }
46
47 // ODBC 3.0+
48 // SQLSetConfigMode()
49 enum : UWORD {
50 ODBC_BOTH_DSN = 0,
51 ODBC_USER_DSN = 1,
52 ODBC_SYSTEM_DSN = 2
53 }
54
55 enum : DWORD {
56 ODBC_ERROR_GENERAL_ERR = 1,
57 ODBC_ERROR_INVALID_BUFF_LEN = 2,
58 ODBC_ERROR_INVALID_HWND = 3,
59 ODBC_ERROR_INVALID_STR = 4,
60 ODBC_ERROR_INVALID_REQUEST_TYPE = 5,
61 ODBC_ERROR_COMPONENT_NOT_FOUND = 6,
62 ODBC_ERROR_INVALID_NAME = 7,
63 ODBC_ERROR_INVALID_KEYWORD_VALUE = 8,
64 ODBC_ERROR_INVALID_DSN = 9,
65 ODBC_ERROR_INVALID_INF = 10,
66 ODBC_ERROR_REQUEST_FAILED = 11,
67 ODBC_ERROR_INVALID_PATH = 12,
68 ODBC_ERROR_LOAD_LIB_FAILED = 13,
69 ODBC_ERROR_INVALID_PARAM_SEQUENCE = 14,
70 ODBC_ERROR_INVALID_LOG_FILE = 15,
71 ODBC_ERROR_USER_CANCELED = 16,
72 ODBC_ERROR_USAGE_UPDATE_FAILED = 17,
73 ODBC_ERROR_CREATE_DSN_FAILED = 18,
74 ODBC_ERROR_WRITING_SYSINFO_FAILED = 19,
75 ODBC_ERROR_REMOVE_DSN_FAILED = 20,
76 ODBC_ERROR_OUT_OF_MEM = 21,
77 ODBC_ERROR_OUTPUT_STRING_TRUNCATED = 22
78 }
79
80 extern (Windows):
81 BOOL ConfigDSN(HWND,WORD,LPCSTR,LPCSTR);
82 BOOL ConfigDSNW(HWND,WORD,LPCWSTR,LPCWSTR);
83 BOOL ConfigTranslator(HWND,DWORD*);
84 BOOL SQLConfigDataSource(HWND,WORD,LPCSTR,LPCSTR);
85 BOOL SQLConfigDataSourceW(HWND,WORD,LPCWSTR,LPCWSTR);
86 BOOL SQLCreateDataSource(HWND,LPCSTR);
87 BOOL SQLCreateDataSourceW(HWND,LPCWSTR);
88 BOOL SQLGetAvailableDrivers(LPCSTR,LPSTR,WORD,WORD*);
89 BOOL SQLGetAvailableDriversW(LPCWSTR,LPWSTR,WORD,WORD*);
90 BOOL SQLGetInstalledDrivers(LPSTR,WORD,WORD*);
91 BOOL SQLGetInstalledDriversW(LPWSTR,WORD,WORD*);
92 int SQLGetPrivateProfileString(LPCSTR,LPCSTR,LPCSTR,LPSTR,int,LPCSTR);
93 int SQLGetPrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,int,LPCWSTR);
94 BOOL SQLGetTranslator(HWND,LPSTR,WORD,WORD*,LPSTR,WORD,WORD*,DWORD*);
95 BOOL SQLGetTranslatorW(HWND,LPWSTR,WORD,WORD*,LPWSTR,WORD,WORD*,DWORD*);
96 BOOL SQLInstallDriver(LPCSTR,LPCSTR,LPSTR,WORD,WORD*);
97 BOOL SQLInstallDriverManager(LPSTR,WORD,WORD*);
98 BOOL SQLInstallDriverManagerW(LPWSTR,WORD,WORD*);
99 BOOL SQLInstallDriverW(LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*);
100 BOOL SQLInstallODBC(HWND,LPCSTR,LPCSTR,LPCSTR);
101 BOOL SQLInstallODBCW(HWND,LPCWSTR,LPCWSTR,LPCWSTR);
102 BOOL SQLManageDataSources(HWND);
103 BOOL SQLRemoveDefaultDataSource();
104 BOOL SQLRemoveDSNFromIni(LPCSTR);
105 BOOL SQLRemoveDSNFromIniW(LPCWSTR);
106 BOOL SQLValidDSN(LPCSTR);
107 BOOL SQLValidDSNW(LPCWSTR);
108 BOOL SQLWriteDSNToIni(LPCSTR,LPCSTR);
109 BOOL SQLWriteDSNToIniW(LPCWSTR,LPCWSTR);
110 BOOL SQLWritePrivateProfileString(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
111 BOOL SQLWritePrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR);
112
113 static if (ODBCVER >= 0x0250) {
114 BOOL ConfigDriver(HWND,WORD,LPCSTR,LPCSTR,LPSTR,WORD,WORD*);
115 BOOL ConfigDriverW(HWND,WORD,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*);
116 BOOL SQLConfigDriver(HWND,WORD,LPCSTR,LPCSTR,LPSTR,WORD,WORD*);
117 BOOL SQLConfigDriverW(HWND,WORD,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*);
118 deprecated ("Use SQLInstallTranslatorExW instead") {
119 BOOL SQLInstallTranslator(LPCSTR,LPCSTR,LPCSTR,LPSTR,WORD,WORD*,WORD,LPDWORD);
120 BOOL SQLInstallTranslatorW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*,WORD,LPDWORD);
121 }
122 BOOL SQLRemoveDriver(LPCSTR,BOOL,LPDWORD);
123 BOOL SQLRemoveDriverManager(LPDWORD);
124 BOOL SQLRemoveDriverW(LPCWSTR,BOOL,LPDWORD);
125 BOOL SQLRemoveTranslator(LPCSTR,LPDWORD);
126 BOOL SQLRemoveTranslatorW(LPCWSTR,LPDWORD);
127 }
128 static if (ODBCVER >= 0x0300) {
129 BOOL SQLGetConfigMode(UWORD*);
130 BOOL SQLInstallDriverEx(LPCSTR,LPCSTR,LPSTR,WORD,WORD*,WORD,LPDWORD);
131 BOOL SQLInstallDriverExW(LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*,WORD,LPDWORD);
132 SQLRETURN SQLInstallerError(WORD,DWORD*,LPSTR,WORD,WORD*);
133 SQLRETURN SQLInstallerErrorW(WORD,DWORD*,LPWSTR,WORD,WORD*);
134 BOOL SQLInstallTranslatorEx(LPCSTR,LPCSTR,LPSTR,WORD,WORD*,WORD,LPDWORD);
135 BOOL SQLInstallTranslatorExW(LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*,WORD,LPDWORD);
136 SQLRETURN SQLPostInstallerError(DWORD,LPCSTR);
137 SQLRETURN SQLPostInstallerErrorW(DWORD,LPCWSTR);
138 BOOL SQLReadFileDSN(LPCSTR,LPCSTR,LPCSTR,LPSTR,WORD,WORD*);
139 BOOL SQLReadFileDSNW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*);
140 BOOL SQLSetConfigMode(UWORD);
141 BOOL SQLWriteFileDSN(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
142 BOOL SQLWriteFileDSNW(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR);
143 }
144
version(Unicode)145 version (Unicode) {
146 alias SQLConfigDataSourceW SQLConfigDataSource;
147 alias SQLConfigDriverW SQLConfigDriver;
148 alias SQLCreateDataSourceW SQLCreateDataSource;
149 alias SQLGetAvailableDriversW SQLGetAvailableDrivers;
150 alias SQLGetInstalledDriversW SQLGetInstalledDrivers;
151 alias SQLGetPrivateProfileStringW SQLGetPrivateProfileString;
152 alias SQLGetTranslatorW SQLGetTranslator;
153 alias SQLInstallDriverW SQLInstallDriver;
154 alias SQLInstallDriverExW SQLInstallDriverEx;
155 alias SQLInstallDriverManagerW SQLInstallDriverManager;
156 alias SQLInstallerErrorW SQLInstallerError;
157 alias SQLInstallODBCW SQLInstallODBC;
158 deprecated alias SQLInstallTranslatorW SQLInstallTranslator;
159 alias SQLInstallTranslatorExW SQLInstallTranslatorEx;
160 alias SQLPostInstallerErrorW SQLPostInstallerError;
161 alias SQLReadFileDSNW SQLReadFileDSN;
162 alias SQLRemoveDriverW SQLRemoveDriver;
163 alias SQLRemoveDSNFromIniW SQLRemoveDSNFromIni;
164 alias SQLRemoveTranslatorW SQLRemoveTranslator;
165 alias SQLValidDSNW SQLValidDSN;
166 alias SQLWriteDSNToIniW SQLWriteDSNToIni;
167 alias SQLWriteFileDSNW SQLWriteFileDSN;
168 alias SQLWritePrivateProfileStringW SQLWritePrivateProfileString;
169 }
170