IsComDll – Check whether a DLL is a self-registering COM server

Private Declare Function LoadLibrary Lib "kernel32.dll" Alias "LoadLibraryA" _    (ByVal Path As String) As LongPrivate Declare Function GetProcAddress Lib "kernel32.dll" (ByVal hModule As _    Long, ByVal ProcName As String) As LongPrivate Declare Function FreeLibrary Lib "kernel32.dll" (ByVal hModule As Long)' Check whether a DLL is an COM self-registering server Function IsComDLL(ByVal FileName As String) As Boolean    Dim hModule As Long    Dim procAddress As Long       ' attempt to load the DLL    hModule = LoadLibrary(FileName)        If hModule <> 0 Then        ' the DLL has been loaded        ' get the address of the DllRegisterServer function        procAddress = GetProcAddress(hModule, "DllRegisterServer")        ' if non-zero then the function is there        IsComDLL = (procAddress <> 0)        ' free-memory        FreeLibrary hModule    End IfEnd Function

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

Recent Articles: