У вас уже есть ответ на заголовок вопроса.
Что касается регистрации DLL, я предполагаю, что вы используете VB6, с которым вы не можете (легко) зарегистрировать ее напрямую .
Правильный способ регистрации - это сделать это как часть установщика.
Делать это в приложении слишком поздно, поскольку у вас (скорее всего) обычно не будет прав администратора, необходимых для его регистрации.
Чтобы попросить пользователя запустить его от имени администратора, вы можете использовать ShellExecute () и передать «runas» в качестве глагола с «regsvr32.exe» и путь к mscomm32.ocx в качестве файла и параметры.
Для VB6:
ShellExecute 0, "runas", "regsvr32.exe", """c:\blah.dll""", "c:\", 0