Re: DSN Listing
From: RB Smissaert (bartsmissaert_at_blueyonder.co.uk)
Date: 02/25/05
- Next message: Michael Smith: "Re: Save Every Work*** as its own Workbook"
- Previous message: Momo: "Using specifieds in a range"
- In reply to: Michael Rekas: "DSN Listing"
- Next in thread: Michael Rekas: "Re: DSN Listing"
- Reply: Michael Rekas: "Re: DSN Listing"
- Messages sorted by: [ date ] [ thread ]
Date: Fri, 25 Feb 2005 14:45:34 -0000
OK, this code will do it:
Option Explicit
Const ERROR_NO_MORE_ITEMS = 259&
Const HKEY_CURRENT_USER = &H80000001
Const HKEY_USERS = &H80000003
Private Declare Function RegCloseKey _
Lib "advapi32.dll" _
(ByVal hKey As Long) As Long
Private Declare Function RegOpenKey _
Lib "advapi32.dll" _
Alias "RegOpenKeyA" (ByVal hKey As Long, _
ByVal lpSubKey As String, _
phkResult As Long) As Long
Private Declare Function RegEnumKeyEx _
Lib "advapi32.dll" Alias _
"RegEnumKeyExA" (ByVal hKey As Long, _
ByVal dwIndex As Long, _
ByVal lpName As String, _
lpcbName As Long, _
ByVal lpReserved As Long, _
ByVal lpClass As String, _
lpcbClass As Long, _
lpftLastWriteTime As Any) As Long
Sub ShowExternalDataSources()
Dim hKey As Long
Dim Cnt As Long
Dim sName As String
Dim sData As String
Dim Ret As Long
Dim RetData As Long
Const BUFFER_SIZE As Long = 255
Ret = BUFFER_SIZE
If RegOpenKey(HKEY_CURRENT_USER, _
"Software\ODBC\ODBC.INI", _
hKey) = 0 Then
sName = Space(BUFFER_SIZE)
While RegEnumKeyEx(hKey, _
Cnt, _
sName, _
Ret, _
ByVal 0&, _
vbNullString, _
ByVal 0&, _
ByVal 0&) <> ERROR_NO_MORE_ITEMS
Cnt = Cnt + 1
Cells(Cnt, 1) = Left$(sName, Ret)
sName = Space(BUFFER_SIZE)
Ret = BUFFER_SIZE
Wend
'close the registry key
RegCloseKey hKey
Else
MsgBox "Error while calling RegOpenKey", , ""
End If
End Sub
RBS
"Michael Rekas" <rekas@worldemail.com> wrote in message
news:408t111vm4fgl4ik7hhialmkrbvbohmqmg@4ax.com...
> Hi there
>
> Does anybody have code that will bring in a list of external data
> sources i.e. the list that appears when you click Data, Get external
> Data, New Database Query.
>
> Thanks
>
> Michael
- Next message: Michael Smith: "Re: Save Every Work*** as its own Workbook"
- Previous message: Momo: "Using specifieds in a range"
- In reply to: Michael Rekas: "DSN Listing"
- Next in thread: Michael Rekas: "Re: DSN Listing"
- Reply: Michael Rekas: "Re: DSN Listing"
- Messages sorted by: [ date ] [ thread ]