具体用法: '获得 DSNs Dim i As Integer Dim sDSNItem As String * 1024 Dim sDRVItem As String * 1024 Dim sDSN As String Dim sDRV As String Dim iDSNLen As Integer Dim iDRVLen As Integer Dim lHenv As Long If SQLAllocEnv(lHenv) <> -1 Then Do Until i <> SQL_SUCCESS sDSNItem = Space$(1024) sDRVItem = Space$(1024) i = SQLDataSources(lHenv, SQL_FETCH_NEXT, sDSNItem, 1024, iDSNLen, sDRVItem, 1024, iDRVLen) sDSN = Left$(sDSNItem, iDSNLen) sDRV = Left$(sDRVItem, iDRVLen)
If sDSN <> Space(iDSNLen) Then cboDSNList.AddItem sDSN cboDrivers.AddItem sDRV End If Loop End If
to xianfeihong(飞人) 那样只是得到数据源的名称,而我的程序中数据源的名称(如Order.mdb)是已知的,最关键是ODBC连接的已知数据源(Order.mdb)的路径怎么办法得到? 大家帮帮我,我已经弄了一个多星期了,老板说这么简单的一个问题都解决不了,我快要遭殃了!!!!
别人在系统里设置了ODBC数据源,我在vb程序里怎么样才能得到他设置的ODBC数据源的路径和文件名!
我刚开始想通过调用注册表的信息来获得数据源的路径,后来发现不行,各位大侠请帮帮我!有没有别的方法?
'获得 DSNs
Dim i As Integer
Dim sDSNItem As String * 1024
Dim sDRVItem As String * 1024
Dim sDSN As String
Dim sDRV As String
Dim iDSNLen As Integer
Dim iDRVLen As Integer
Dim lHenv As Long
If SQLAllocEnv(lHenv) <> -1 Then
Do Until i <> SQL_SUCCESS
sDSNItem = Space$(1024)
sDRVItem = Space$(1024)
i = SQLDataSources(lHenv, SQL_FETCH_NEXT, sDSNItem, 1024, iDSNLen, sDRVItem, 1024, iDRVLen)
sDSN = Left$(sDSNItem, iDSNLen)
sDRV = Left$(sDRVItem, iDRVLen)
If sDSN <> Space(iDSNLen) Then
cboDSNList.AddItem sDSN
cboDrivers.AddItem sDRV
End If
Loop
End If
那样只是得到数据源的名称,而我的程序中数据源的名称(如Order.mdb)是已知的,最关键是ODBC连接的已知数据源(Order.mdb)的路径怎么办法得到? 大家帮帮我,我已经弄了一个多星期了,老板说这么简单的一个问题都解决不了,我快要遭殃了!!!!