Извините, что долго не обновлял этот вопрос. Я получил помощь от моего друга, и теперь он работает нормально. И я думаю, что я обновлю вопрос и надеюсь, что это будет полезно для других людей.
Все ошибки или красные поля в DependencyWalker можно игнорировать, это просто файлы Windows. Регистрация не удалась, потому что мой ATL.dll фактически указывает на ATL из другого программного обеспечения (скажем, программного обеспечения A), а не из C: \ windows \ system32 \ atl.dll.
Программное обеспечение A заменяет C: \ windows \ system32 \ atl.dll на собственную версию ATL.dll (что не очень хорошо). Удаление программного обеспечения А не помогло. Я перешел в раздел реестра, проверил путь к ATL.dll, изменил его на C: \ windows \ system32 \ atl.dll и зарегистрировал ATL.dll.
После этого я попытался зарегистрировать мой .ocx, и он работает.
Надеюсь, это будет полезно для других людей!
Спасибо.