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