Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB5,VB6
Expertise: Intermediate
Jan 1, 2003



Building the Right Environment to Support AI, Machine Learning and Deep Learning

CheckOLEDBProvider - Check whether an OLEDB provider is registered correctly

'Check if the specified OLEDB Provider is installed and registered correctly
'Example: check the Jet 4.0 OLEDB Provider
'MsgBox "The specified OLEDB provider " & '        IIf(CheckOLEDBProvider
' ("Microsoft.Jet.OLEDB.4.0"), "does", "does not") & " exist"
' NOTES: Requires CheckRegistryKey and GetRegistryValue

Function CheckOLEDBProvider(ByVal ProgID As String) As Boolean
    Dim CLSID As String
    Dim InprocServer As String
    Const HKEY_CLASSES_ROOT = &H80000000
    On Error Resume Next
    'if the ProgID for the OLEDB does not exist, return false
    If Not CheckRegistryKey(HKEY_CLASSES_ROOT, ProgID) Then Exit Function
    'get the clsid
    CLSID = GetRegistryValue(HKEY_CLASSES_ROOT, ProgID & "\CLSID", "")
    'check if there is the key "OLE DB Provider" under the CLSID key
    If Not CheckRegistryKey(HKEY_CLASSES_ROOT, _
        "CLSID\" & CLSID & "\OLE DB Provider") Then Exit Function
    'check if the physical file exists
    InprocServer = GetRegistryValue(HKEY_CLASSES_ROOT, _
        "CLSID\" & CLSID & "\InprocServer32", "")
    If (GetAttr(InprocServer) And vbDirectory) = 0 Then
        'if the routine arrives here, return True
        CheckOLEDBProvider = True
    End If
End Function
Marco Bellinaso
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date