if (hLib < (HINSTANCE)HINSTANCE_ERROR)
{
DisplayMessage(IDS_LOADLIBFAILED, pszDllName); //unable to load DLL
iReturn = FAIL_LOAD; //unable to load DLL
}
// Find the entry point.
(FARPROC&)lpDllEntryPoint = GetProcAddress(hLib,
_T(“DllRegisterServer”));
if (lpDllEntryPoint != NULL)
(*lpDllEntryPoint)();
else
//unable to locate entry point
Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
Private Declare Function LoadLibrary Lib "kernel32" Alias
"LoadLibraryA" (ByVal lpLibFileName As String) As Long
Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long
Private Declare Function CallWindowProc Lib "user32" Alias
"CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long,
ByVal Msg As Any, ByVal wParam As Any, ByVal lParam As Any) As Long
Private Const ERROR_SUCCESS = &H0
Dim lb As Long, pa As Long
lb = LoadLibrary(DllServerPath) 'change DllServerPath to the Path to your DLL
pa = GetProcAddress(lb, "DllRegisterServer")
If CallWindowProc(pa, hWnd, ByVal 0&, ByVal 0&, ByVal 0&) =
ERROR_SUCCESS Then
MsgBox "Successful"
End If
FreeLibrary lb
actually, you could just call
shell "regsv32 " & PathToYourDLL