este codigo echo en visual basic crea un dsn, bueno ahora yo solo deseo crearlo en un archivo externo en esta caso .ini y hasta ahora me pregunto como se puede hacer...
Public Sub CreateODBC(mysql As Boolean, host As String)
Dim DataSourceName As String
Dim DatabaseName As String
Dim Description As String
Dim DriverPath As String
Dim DriverName As String
Dim sUser As String
Dim sPassword As String
Dim sOption As String
Dim sServer As String
Dim lResult As Long
Dim hKeyHandle As Long
'Specify the DSN parameters.
DriverPath = "C:\WinNT\System32"
sUser = ODBCLogin ' modData.BAS
sPassword = ODBCPassword
sOption = "3"
sServer = host
' VersionSQL
If mysql Then
DatabaseName = "GLK"
DataSourceName = "myGLK"
Description = "myGLK DSN"
DriverName = "MySQL ODBC 3.51 Driver"
Else
DatabaseName = "ACARD"
DataSourceName = "ACARD"
Description = "ACARD DSN"
DriverName = "SQL Server"
End If
'Create the new DSN key.
lResult = RegCreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & _
DataSourceName, hKeyHandle)
'Set the values of the new DSN key.
lResult = RegSetValueEx(hKeyHandle, "Database", 0&, REG_SZ, _
ByVal DatabaseName, Len(DatabaseName))
lResult = RegSetValueEx(hKeyHandle, "Description", 0&, REG_SZ, _
ByVal Description, Len(Description))
lResult = RegSetValueEx(hKeyHandle, "Driver", 0&, REG_SZ, _
ByVal DriverPath, Len(DriverPath))
lResult = RegSetValueEx(hKeyHandle, "Server", 0&, REG_SZ, _
ByVal sServer, Len(sServer))
If mysql Then
lResult = RegSetValueEx(hKeyHandle, "UID", 0&, REG_SZ, _
ByVal sUser, Len(sUser))
lResult = RegSetValueEx(hKeyHandle, "PWD", 0&, REG_SZ, _
ByVal sPassword, Len(sPassword))
lResult = RegSetValueEx(hKeyHandle, "OPTION", 0&, REG_SZ, _
ByVal sOption, Len(sOption))
Else
lResult = RegSetValueEx(hKeyHandle, "User", 0&, REG_SZ, _
ByVal sUser, Len(sUser))
lResult = RegSetValueEx(hKeyHandle, "Password", 0&, REG_SZ, _
ByVal sPassword, Len(sPassword))
End If
'Close the new DSN key.
lResult = RegCloseKey(hKeyHandle)
'Open ODBC Data Sources key to list the new DSN in the ODBC Manager.
'Specify the new value.
'Close the key.
lResult = RegCreateKey(HKEY_LOCAL_MACHINE, _
"SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources", hKeyHandle)
lResult = RegSetValueEx(hKeyHandle, DataSourceName, 0&, REG_SZ, _
ByVal DriverName, Len(DriverName))
lResult = RegCloseKey(hKeyHandle)
End Sub ' *** CreateODBC |