|
|
|
|
|
Dicas
|
|
Visual Basic (Windows)
|
|
|
Título da Dica: Criar e Remover DSN para Access via código
|
|
|
|
Postada em 1/8/2003 por DÖIDÖ
O código abaixo cria ou remove uma DSN de sistema no windows, eu testei apenas no XP, mas deve funcionar em todos. Espero que seja de grande utilidade.
[]s Fernando
ps.: Coloque tudo em um form com 2 botões de comando. ****************************************************** Option Explicit
Private Const ODBC_ADD_DSN = 1 Private Const ODBC_CONFIG_DSN = 2 Private Const ODBC_REMOVE_DSN = 3 Private Const ODBC_ADD_SYS_DSN = 4 Private Const ODBC_CONFIG_SYS_DSN = 5 Private Const ODBC_REMOVE_SYS_DSN = 6 Private Const ODBC_REMOVE_DEFAULT_DSN = 7
Private Const vbAPINull As Long = 0&
Private Declare Function SQLConfigDataSource Lib "ODBCCP32.DLL" (ByVal hwndParent As Long, ByVal fRequest As Long, ByVal lpszDriver As String, ByVal lpszAttributes As String) As Long
Private Sub Command1_Click() Dim intRet As Long Dim strDriver As String Dim strAttributes As String
strDriver = "Microsoft Access Driver (*.mdb)" strAttributes = strAttributes & "DESCRIPTION=DSN temporária para testes." & Chr$(0) strAttributes = strAttributes & "DSN=DSN_TEMP" & Chr$(0) strAttributes = strAttributes & "DBQ=c:\programas\etiquetas\dados.mdb" & Chr$(0) strAttributes = strAttributes & "UID=admin" & Chr$(0) strAttributes = strAttributes & "PWD=" & Chr$(0) intRet = SQLConfigDataSource(vbAPINull, ODBC_ADD_SYS_DSN, _ strDriver, strAttributes) If intRet Then MsgBox "DSN Criado" Else MsgBox "Falhou a criação do DSN" End If End Sub
Private Sub Command2_Click() Dim intRet As Long Dim strDriver As String Dim strAttributes As String
strDriver = "Microsoft Access Driver (*.mdb)" strAttributes = "DSN=DSN_TEMP" & Chr$(0) intRet = SQLConfigDataSource(vbAPINull, ODBC_REMOVE_SYS_DSN, _ strDriver, strAttributes) If intRet Then MsgBox "DSN Eliminado" Else MsgBox "DSN não foi eliminado!" End If End Sub
|
|
|
|
|