Tricky problème !
J'essaye de définir dynamiquement le DSN pour le lien ODBC de mes tables liées (vers serveur distant).
J'utilise le code suivant :
Le problème est le suivant : lorsque j'accède en lecture à une table via ce DSN, le système m'ouvre une boîte de dialogue avec les bons paramètres définis ci-dessus mais sans le UID et PWD qui restent vides !!!!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 lstr_attr = "DSN=O Naturel" & vbNullChar lstr_attr = lstr_attr & "SERVER=ip du serveur" & vbNullChar lstr_attr = lstr_attr & "DATABASE=testdb" & vbNullChar lstr_attr = lstr_attr & "DESCRIPTION=test accès db" & vbNullChar lstr_attr = lstr_attr & "OPTION=3" & vbNullChar lstr_attr = lstr_attr & "UID=test" & vbNullChar lstr_attr = lstr_attr & "PWD=test" & vbNullChar lstr_attr = lstr_attr & vbNullChar ll_ret = SQLConfigDataSource(0, ODBC_ADD_DSN, lstr_driver, lstr_attr) If ll_ret = 0 Then li_idx = 0 Do li_idx = li_idx + 1 lstr_msg_err_odbc = String(2048, vbNullChar) ll_ret = SQLInstallerError(li_idx, ll_err_code_odbc, lstr_msg_err_odbc, 2047, ll_err_codemsg_odbc) If ll_ret = SQL_SUCCESS_WITH_INFO Then ll_ret = SQL_SUCCESS If ll_ret = SQL_SUCCESS Then MsgBox Left(lstr_msg_err_odbc, ll_err_codemsg_odbc) Loop Until (ll_ret <> SQL_SUCCESS Or li_idx = 8) End If
Quelqu'un aurait-il une idée ?
Merci !!!!!
Partager